rust9x / rust

Empowering everyone to build reliable and efficient software, even for Windows 9x/Me/NT/2000/XP/Vista.
https://github.com/rust9x/rust/wiki
Other
344 stars 10 forks source link

Reimplement `fileextd.lib` fallbacks in rust #43

Open seritools opened 4 days ago

seritools commented 4 days ago

Would allow more/most GetFileInformationByHandleEx/SetFileInformationByHandle to succeed on NT-based systems, while still falling back properly on 9x.

cher-nov commented 1 day ago

Some additional info just for clarity:

https://web.archive.org/web/20121018011132/http://www.microsoft.com/en-us/download/details.aspx?id=22599 (old link: http://www.microsoft.com/downloads/details.aspx?FamilyID=1DECC547-AB00-4963-A360-E4130EC079B8&displaylang=en - unfortunately not preserved in Wayback Machine, may God bless 'em)

Win32 FileID API Library - Additional kernel APIs for specific functionality. This library contains functions for accessing file information based on ID (OpenFileByID, GetFileInformationByHandleEx, and SetFileInformationByHandle).

File Name: Win32 FileID APIs 1.1.EXE
Version: 1.1
Date Published: 10/3/2006

https://web.archive.org/web/20061124104838/https://download.microsoft.com/download/0/f/e/0fe2a777-5ac5-40d1-8700-86169b182eda/Win32%20FileID%20APIs%201.1.EXE

Mirrors (in Russian) + DLL version of the library: https://oktava-studio.ru/fileextd.php https://hex.pp.ua/fileextd.php - same link, but on another domain

seritools commented 19 hours ago

fileextd.lib is also still part of current Windows SDKs. Including it however wouldn't work well with the runtime detection in rust9x