LLXX Posted February 27, 2006 Posted February 27, 2006 This patch was given to me by an individual that wishes to remain anonymous. It patches the kernel32.dll in Windows 98 and 98SE to add support for the previously NT-only APIs VirtualAllocEx, VirtualFreeEx, and CreateRemoteThread. Might be useful in getting a few more NT-only programs to run on 9x.Source code is included.win98updt0001.zip
Chozo4 Posted February 27, 2006 Posted February 27, 2006 (edited) I don't have any NT-Based programs that I know of which call those API's so am Unable to test the functionality. However, I have downloaded and installed the patch.Confirmed that the exports were installed using ExeScope... So far so good. System still stable and no problems have cropped up. Whoever this anonymous person is, I would like to thank them for extending support of the 9X Kernel. It is a great thing to be able to add additional API support to the 9X kernel and would love to see additional extentions in the future.Anyone who continues to support 9X have my highest regards. Thank you everyone and many many thanks to the anonymous submitter. Edited February 27, 2006 by Chozo4
PROBLEMCHYLD Posted February 27, 2006 Posted February 27, 2006 installed itDon't kno wut is doesbut my computer still workin
LLXX Posted February 27, 2006 Author Posted February 27, 2006 (edited) installed itDon't kno wut is doesbut my computer still workinIt just adds three more functions to the kernel, so that some NT-only programs may be able to run. Pleased to hear your system is still working fine.Any reports on system (in)stability are greatly appreciated. This is currently a beta-test, as I am considering to ask for inclusion of this into the next version of 98SE USP.Coming soon in a few months: LARGE DISK SUPPORT! Edited February 27, 2006 by LLXX
StateS Posted February 27, 2006 Posted February 27, 2006 zis ist vonderbra just vonderbra you guys are really doing great with all of these modifications and stuff. Keep it up!!! Three thumbs up for you.
LLXX Posted February 28, 2006 Author Posted February 28, 2006 Good to see no problems so far.Keep posting whether it works or not, so that in the event of any system instability being noticed I can try to resolve the problem as soon as possible. This is still in beta stage.
Petr Posted February 28, 2006 Posted February 28, 2006 And what about SetFilePointerEx function required by Adobe Reader 7 (AcroRd32.exe, reader_sl.exe)? Would it be sufficient to run Adobe Reader 7 or also function SHGetFolderPathA required by ACE.DLL (Adobe Color Engine) has to be added to shell32.dll?Or even this would not help to run AR7?To run Excel 2003 Viewer and Word 2003 viewr it would be necessary to add the following function:missing functions in kernel32.dllVerifyVersionInfoW (required by MSO.DLL)VerSetConditionMask (required by MSO.DLL)SetFilePointerEx (required by OSE.DLL)GetFileSizeEx (required by OSE.DLL)CreateHardLinkW (required by OSE.DLL)missing function in user32.dllGetLastInputInfoAllowSetForegroundWindowSetLayeredWindowAttributesSHGetFolderLocationmissing functions in advapi32.dllLsaCloseLsaStorePrivateDataLsaRetrievePrivateDataLsaNtStatusToWinErrorLsaOpenPolicyConvertSidToStringSidWDecryptFileWEncryptFileWConvertStringSecurityDescriptorToSecurityDescriptorWConvertSidToStringSidACheckTokenMembershipPetr
LLXX Posted March 1, 2006 Author Posted March 1, 2006 (edited) Kernel32.dllVerifyVersionInfoW (required by MSO.DLL) possible - but then what would 98SE identify itself as?VerSetConditionMask (required by MSO.DLL) possible - see aboveSetFilePointerEx (required by OSE.DLL) possibleGetFileSizeEx (required by OSE.DLL) possibleCreateHardLinkW (required by OSE.DLL) NTFS only, no chanceUser32.dllGetLastInputInfo probably unlikelyAllowSetForegroundWindow no functionality to be implementedSetLayeredWindowAttributes too much work required to implement transparent windowsShell32.dllSHGetFolderLocation available in Windows ME shell32.dll (5.0 or later version)AdvApi32.dll - All the functions below will require extensive work and thus won't be implemented - would a replacement ADVAPI32.DLL from a newer Windows version work?LsaCloseLsaStorePrivateDataLsaRetrievePrivateDataLsaNtStatusToWinErrorLsaOpenPolicyConvertSidToStringSidWDecryptFileWEncryptFileWConvertStringSecurityDescriptorToSecurityDescriptorWConvertSidToStringSidACheckTokenMembershipWhat about one for WinME also, LLX ?This patch will also work on WinME if you disable the SFP, otherwise the original kernel will be restored. Edited March 1, 2006 by LLXX
Tihiy Posted March 1, 2006 Posted March 1, 2006 Well, LLXX, i'm not sure what it is so easy to add functions.In the patch you've submitted, no new functions were added into export table - they were in 98 kernel, but unimplemented.I know, adding functions to entry table is much harder. Are you sure that it is possible?
noguru Posted March 3, 2006 Posted March 3, 2006 Being new here I would like to thank al those skillful people overhere who keep updating and improving my old Win98se!Sadly I must say that with this modified kernel I ran into a few problems. First I noticed that a dotnet 2.0 application (please dont ask, some sort of "hiding" thing) wasn't running anymore. More important for me, I couldn't install a DVD-ram driver because my OS wasn't recognized, " Your OS is not suitable to install this software" ? Not true offcourse. Is the date of my kernel32.dll, 27-02-06, causing this? Other programs install ok. I installed a new ZoneAlarm without a glitch. Reverting back to original kernel32.dll from Win98 CD solved both these problems. Hope that this info wil be of use.off topic: A DVD-ram works fine with Win98, just like a very fast 4.6 gig floppydisk. See how capable this old OS still is!
Tihiy Posted March 3, 2006 Posted March 3, 2006 I think that's because this patch modifies GetVersionInfoEx build number hi word to detect itself;propertly written applications should never examine buld number hi word.Better not to rely on GetVersionEx, i hope it'll be solved in next patch version (?).
Fredledingue Posted March 23, 2006 Posted March 23, 2006 Kernel32.dllVerifyVersionInfoW (required by MSO.DLL) possible - but then what would 98SE identify itself as?That's it! Now we are changing the kernel is it still w98? Should it be recognized as NT-based (XP?!) ?Should we install versions "for w98" or for "XP"?Should the patch cheat installers by saying it's "XP" instead of 98?How will react the "XP/2000-only" software community? Aren't they gonna be puzzled?But awesome job anyway! Gonna test it soon! Thanks!
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now