Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


  • Content Count

  • Donations

  • Joined

  • Last visited

  • Days Won


win32 last won the day on September 21

win32 had the most liked content!

Community Reputation

420 Excellent

About win32

Profile Information

  • OS
  • Country


  • Country Flag

Recent Profile Visitors

3,276 profile views
  1. I do think that needs to be done, specifically for vmx86.sys. I don't have version 15 handy, but the file from version 16 is missing a lot of functions (an ntoskrnl update should fix that, but it will take awhile for that to be done). And there's the VMware Authorization Service issue which also needs to be dealt with somehow.
  2. I think they're fixable, but they may take some time. I need to analyze those files I mentioned, but only after I clear out the registry of existing VMware references since I have an older install of Player that went awry (even running an installer causes a crash!).
  3. VMware Authorization Service (vmware-authd.exe) failed to start, right? And I'd also be surprised if the drivers like vmx86.sys are still compatible at this stage. I'd check them all with Dependency Walker.
  4. I tracked down the Perl script that effectively automates the process of making wrapper DLLs, especially for DLLs like ntdll which exports over 1800 functions: http://web.archive.org/web/20070526114542/http://www.craigheffner.com/security/linkout.txt This will prove essential for Vista and any future work for 7. And maybe even more so for 8.x and 10. Though ActivePerl 5.26's installer errored out with this: (0x80004005) the specified application is not a valid application for this OS platform. Indeed, Windows Installer definitely knows it's "running" on 6.1.7601 SP1 based on the error log. I found the executable for the "state tool" and it had a subsystem version of 6.1, so that may have been the reason for the error, so perhaps I will follow BWC and disable the subsystem version testing like he did, after all (which will only work with system32 file replacement). And just use Strawberry Perl anyway; it seems to work far better with Vista. On another note, it appears that a new hack in my ntoskrnl (not released yet) to prevent it from changing CurrentVersion from NT 6.1 to 6.0 in the registry has fixed some OS functionality. When I added CoGetApartmentType to ole32.dll, I could no longer modify Sidebar widgets nor open folders with downloaded files through browsers. But I can do that with my modified ole32 once CurrentVersion is changed permanently. But not everything thinks it's on NT 6.1 yet (like RtlGetVersion), which is still a big problem that no one has solved since it arose in 2005. Windows compatibility mode will not solve it.
  5. Well, technically we aren't using their branding anymore since they just abandoned what we're using now. We now have a different product to theirs with different branding, which is most of what they wanted. Though there may still be some sort of trademark attached to their old branding. And Serpent isn't resolved though I don't think they are too pleased about us brand leeches either way (either we piggyback on their current unofficial branding or simply seize/gift ourselves their old branding). And New Moon could still evoke memories of Pale Moon (for an unfortunate few anyway).
  6. I saw that coming... While I do respect Pale Moon and its developers for maintaining possibly one of the last independent web browsers around (enough to have gifted the x64 versions of 28/likely 29 to Vista), I will also wear the Browser badge with pride. Most people use a webpage viewing application covered in Chrome, a few stragglers need an Explorer to guide them through the Internet, others live on the Edge, and some like roasted fox. But Browser is where I stand. It's just like the "no name" grocery brand, which does quite well here in Canada.
  7. oh, it could be something like this: Maybe it picks up on the OS version and then refuses to load if it sees the wrong one. First it was Qt 5.10+ (Vista), allegedly user mode components of later NVIDIA drivers (Vista), AMD drivers (Windows 8) as well as assorted miscellaneous drivers (Windows 2000). I think we really do need a way to make the OS universally identify as a later one, The way to do this for 2000 is probably quite simple, but for all x64 operating systems post-Longhorn reset (including XP x64), I'm not sure yet. or maybe they made the value little-endian? I'll look into that.
  8. How about the status of vmx86.sys?
  9. Is there any non-UWP/DX12 software that really cannot run on W7? The only missing win32 API function that I've seen called is user32!SetCoalescableTimer by the Office 2019 installer and it should be trivial to add. Vegas Pro 17 says in its system requirements that it needs Windows 10 but the installer says that it requires Windows 7/8. The Whatsapp desktop application says that it needs Windows 8 but runs on 7. Probably just people taking W7 EOS too seriously, even though Windows 8 as a client OS had its EOS in 2016. Mind you, it's quite difficult to trick VMware installers (unless you can get the OS to effectively become NT 6.2, which may cause web browsers to freeze). So that Workstation 11/12 method should work.
  10. Lots of news. I managed to work around ntdll somewhat. My ntext (ntdll with a new section and updated checksum) was successfully hooked by kernel32 through forwarded functions. But programs that call ntdll directly didn't go as well. Firefox would crash or pseudo-load hogging up several CPU threads. So I think a completely new wrapper dll that forwards to ntdll is necessary. I was almost successful in getting the Windows 7 compatibility shimming framework to work (a modified aclayers.dll that fakes Windows 7 SP1 instead of RTM and acppage.dll in particular). But the latter calls registry-related functions from kernel32 instead of advapi32. So I added them to kernel32 forwarding to advapi32 but it didn't work as it would keep forgetting the compatibility options (those reg functions are slightly different on 7 than Vista but very difficult to implement). So it may be better to modify the Vista versions of the files, but it's not that clear cut to me, unless I were to replace one of the existing compatibility options (somehow I think no one really bothers with the 2003 SP1 option).
  11. Go to the folder where your screen reader is located and make a file named nvda.exe.local (or whatever the name of the exe is). Copy the original dlls into the screen reader's folder. Only if you want to use my ntoskrnl/ntkrnlmp on a UEFI system.Though you could use that loader/driver I mentioned earlier. But if you just need to use ntdll, it won't be needed anymore.
  12. I have resigned myself to declaring that ntdll on Vista and up is indeed off limits. I again went to XP x64 for some inspiration and installed (Vista-compatible) Blender 2.90 on it. Several functions were missing like InitializeCriticalSectionEx. That function imports RtlInitializeCriticalSectionEx from ntdll, which also was introduced in Vista. So that requires doing the near-impossible, import table expansion. Then I looked at One-Core-API. As @Ximonite pointed out, ntext helps extend ntdll. ntext is a layer between kernel32 and ntdll, and most of ntext is imports and forwards respectively from/to ntdll. No new imports unless we make our own binaries, but forwards are indeed exports from the file. The people designing the PE format certainly had some nice tricks up their sleeves! Though I was forwarding functions to ntdll from kernel32 in Windows 2000 back in June, so my memory is going I guess. So this ntext would be a copy of ntdll with new and upgraded functions. But what about programs that call ntdll directly (which is frowned upon for win32 applications as kernel32 is what they're supposed to call as an intermediary)? A patcher that changes import table references from ntdll to ntext in a particular program is needed. Preferably, I'd like to make the file that ntoskrnl loads and is integrity-checked a decoy named ntext (which would be the original ntdll), while everything else calls a modified ntdll (so no changes to import tables are necessary). But changing the reference to ntdll I found in ntoskrnl did nothing.
  13. Here is KB4566371 for Windows NT 5.x: https://mega.nz/file/Us9GSQ6a#wDnAvUagKV05btOMEd5jBXI6_14tkmoDAcp-xyHxo1I
  14. Technically Vista can take advantage of WDDM 1.1 features. I use driver version 320.92 x64 and DWM RAM usage remains stable even with over 25 windows open, as opposed to increasing linearly as what happens with WDDM 1.0. I found this, 38x drivers running on Vista: But how exactly? The kernel mode part has exported missing functions since 372.90.
  15. http://web.archive.org/web/20200809134931/http://download.windowsupdate.com/msdownload/update/software/ftpk/2008/09/windowssoundschemes-x86-intl-setup2_b29dd063f9c350c45568ec24699731643ecc10e9.exe
  • Create New...