Jump to content

KernelEx for Win2000


Recommended Posts

I'm wondering though, is the Japanese installer, JUST an installer in Japanese? Could we just install it on English versions of 2000, right?

No, you can't do it :no:

English version is available only for kernel v5. The newest Japanese version is v10.

Link to comment
Share on other sites

  • 3 weeks later...

Hello cracks,

here still running a Windows 2000 professional computer, which I mainly use to play chess.

Several new engines come with a VC2008 runtime, the procedures require the Encode / Decode-pointers in the kernel32.dll.

An upgrade to Windows XP on this machine is not a question, because on this computer still runs other licensed software, which runs only under Windows 2000, this upgrades would cost much money.

I had even thought about the possibility to patch the kernel32.dll, but I lack the skills for it.

After appropriate research, I came across this forum, where blackwingcat has fortunately been made this work.

I've tried today, with Anolis, RESHACK and other resource editors make the Windows2000-KB935839-v5-x86-ENU.exe v5 run under a German Windows 2000 professional, but without success.

I’ve created with RESHACK under "Action / Save all resources" one all.rc for Kernel32.dll from Windows2000-KB935839-v5-x86-ENU.exe and the Kernel32.dll from my current system and the structures appear identical.

But at the point of writing the German resources into the new Kernel32.dll, I have failed.

It would be very nice, if someone could give me a hint, how I minimal patch this new Kernel32.dll, so it runs on my German Windows 2000 computer.

Best regards,

Markus

Link to comment
Share on other sites

Lambda,

it's actually very easy and doesn't involve any resource hacking at all. Keep in mind that by installing the English kernel some system dialogs may change into English.

All you have to do is to

1. Download Windows2000-KB935839-v5a-x86-ENU.exe. It's an edited version of BWC's kernel v5 by me which follows the standard structure of M$ updates. It means that in can be slipstreamed by HFSLIP while the original one cannot. It's also easier to modify the contents of it (no CAB files inside).

2. Go to .\update folder and open update.inf.

3. Find [strings]

4.Change these values

LangTypeValue           = 9
WSEDIR = "1033"

to your language. You have to find the appropriate ones for your language, ex. 15 and 1045 for Polish.

5. Run update.exe.

Be careful! It may not run on all language versions. I tested such an installation in a Polish system and it worked. I would guess that it will work in other European language versions too. It probably won't work for East Asian (CHN,KOR,JPN) versions as the Japanese kernel doesn't work in English Win2k.

Edited by tomasz86
Link to comment
Share on other sites

...

it works fine!! thank you!!

I'm from time to time in poland, near Luban (DLB). if it is not too intrusive - and you live in the west of Poland - I would like to drink a beer with you!

Thank you very much!!

Best Regards,

Markus

Edit:

To contact you, i'll post a temporary available link to a qr-code with my e-mail adress ... if you want.

Edited by Lambda
Link to comment
Share on other sites

  • 5 months later...

I have tried v10 kernel and by my results, it doesn't work. When I tried launching it in a VM, the package itself gave me an error about not being a valid Win32 application. I opened it with WinZip and forced the installation via setup.cmd, I got it installed, but now I'm in a permanent reboot loop, it doesn't even reach the login prompt or GUI for that matter.

Edited by SearanoX
Link to comment
Share on other sites

Thx.

I'll check this code again.

I have tried v10 kernel and by my results, it doesn't work. When I tried launching it in a VM, the package itself gave me an error about not being a valid Win32 application. I opened it with WinZip and forced the installation via setup.cmd, I got it installed, but now I'm in a permanent reboot loop, it doesn't even reach the login prompt or GUI for that matter.

Link to comment
Share on other sites

I fixed English version v10. and released v10a.

Thx

I have tried v10 kernel and by my results, it doesn't work. When I tried launching it in a VM, the package itself gave me an error about not being a valid Win32 application. I opened it with WinZip and forced the installation via setup.cmd, I got it installed, but now I'm in a permanent reboot loop, it doesn't even reach the login prompt or GUI for that matter.

Link to comment
Share on other sites

Thank you very much. :thumbup

I also released v11 Japanese Edition.

It seems to be working! The installer worked properly and I'm not stuck in an endless reboot. I haven't tested it extensively yet but I will do that now.

Edited by blackwingcat
Link to comment
Share on other sites

You are very welcome! Thank you for keeping Windows 2000 alive for us!

I've been testing it and it seems stable, I haven't run into anything bad yet. I'm curious though, do you know offhand what benefits we'll get from the updated strings in the new Kernel32 v10?

Link to comment
Share on other sites

Sorry, what means 'updated strings '?

I've been testing it and it seems stable, I haven't run into anything bad yet. I'm curious though, do you know offhand what benefits we'll get from the updated strings in the new Kernel32 v10?

Link to comment
Share on other sites

I'm sorry, I really shouldn't have said updated strings. Basically I meant to ask like what added benefits will we get from the added extensions in the new kernel32. For example, are there a few more programs that will work with this new v10 kernel that wouldn't before in the v5 kernel?

Edited by SearanoX
Link to comment
Share on other sites

I'm sorry, I really shouldn't have said updated strings. Basically I meant to ask like what added benefits will we get from the added extensions in the new kernel32. For example, are there a few more programs that will work with this new v10 kernel that wouldn't before in the v5 kernel?

Following is update history, translated to English from my blog.

1. Windows 2000 is not supported InvariantCulture. so, any programs which based on Delphi or C++Builder show "Class xxxx not found" ( xxx is classname TBitmapImage , TEdit and so on)

Following functions use InvariantCulture. so if the application use parameter 'Invaliantculture' , it doesn't work.

CompareStringA

CompareStringW

EnumCalendarInfoA

EnumCalendarInfoExA

EnumCalendarInfoExW

EnumCalendarInfoW

EnumDateFormatsA

EnumDateFormatsExA

EnumDateFormatsExW

EnumDateFormatsW

EnumLanguageGroupLocalesA

EnumLanguageGroupLocalesW

EnumSystemCodePagesA

EnumSystemCodePagesW

EnumSystemLanguageGroupsA

EnumSystemLanguageGroupsW

EnumSystemLocalesA

EnumSystemLocalesW

EnumTimeFormatsA

EnumTimeFormatsW

EnumUILanguagesA

EnumUILanguagesW

GetCalendarInfoA

GetCalendarInfoW

GetCPInfoExW

GetCurrencyFormatA

GetCurrencyFormatW

GetDateFormatA

GetDateFormatW

GetGeoInfoW

GetLocaleInfoA

GetNumberFormatA

GetNumberFormatW

GetStringTypeA

GetStringTypeExW

GetTimeFormatA

GetTimeFormatW

IsDBCSLeadByteEx

LCMapStringA

LCMapStringW

MultiByteToWideChar

SetCalendarInfoA

SetCalendarInfoW

SetLocaleInfoA

SetLocaleInfoW

SetThreadLocale

WideCharToMultiByte

The function is embedded since v6 kernel.

I descripted the detail at my blog.

2. since v6 kernel extended following 9 APIs.

CheckRemoteDebuggerPresent

(It is used by Any games)

IsWow64Message

SetDllDirectoryA

GetModuleHandleExW

(It is used by Any applications)

InterlockedPopEntrySList

InterlockedPushEntrySList

InitializeSListHead

InterlockedFlushSList

QueryDepthSList

(It is used by Any game framework)

3. v6 kernel has a bug, so I replaced v7.

4. v8 kernel is released for MS11-025(v1). But microsoft replaced it, so I canceled this fix on v9 kernel.

5. since v9 kernel extended following 2 APIs.

AttachConsole ( some applications use for background debug.)

TzSpecificLocalTimeToSystemTime ( It is used by some applications)

6. v9 kernel includes wtsapi32.dll and it includes following 3 APIs(stub).

WTSQueryUserToken

WTSRegisterSessionNotification

WTSUnRegisterSessionNotification

Any application checked Terminal Service API. So they require these functions

6. v9 kernel has some bugs, so I replaced v10.

Link to comment
Share on other sites

By the way, I quickly compared the new v10a of BlackWingCat's kernel with the newest version of WildBill's kernel.

1. APIs present only in WB kernel:


AddLocalAlternateComputerNameA
AddLocalAlternateComputerNameW
AddVectoredExceptionHandler
CopyLZFile
CreateMemoryResourceNotification
CreateNlsSecurityDescriptor
CreateSocketHandle
EnumerateLocalComputerNamesA
EnumerateLocalComputerNamesW
GetCPFileNameFromRegistry
GetDllDirectoryA
GetDllDirectoryW
GetExpandedNameA
GetExpandedNameW
GetHandleContext
GetModuleHandleExA
GetProcessId
GetSystemTimes
GetSystemWow64DirectoryA
GetSystemWow64DirectoryW
GetVolumePathNamesForVolumeNameA
GetVolumePathNamesForVolumeNameW
IsValidUILanguage
LZClose
LZCloseFile
LZCopy
LZCreateFileW
LZDone
LZInit
LZOpenFileA
LZOpenFileW
LZRead
LZSeek
LZStart
QueryMemoryResourceNotification
RemoveLocalAlternateComputerNameA
RemoveLocalAlternateComputerNameW
RemoveVectoredExceptionHandler
RtlCaptureContext
RtlCaptureStackBackTrace
SetClientTimeZoneInformation
SetHandleContext
SetLocalPrimaryComputerNameA
SetLocalPrimaryComputerNameW
SetThreadUILanguage

2. APIs present only in BWC kernel:


CheckRemoteDebuggerPresent

The rest of the included APIs are the same. This list is related only to kernel32.dll. There are other files included in WB kernel too but there's no wtsapi32.dll which BlackWingCat added to his kernel.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...