Jump to content

I am trying to create an extended kernel for NT4


Recommended Posts

On 7/9/2022 at 10:02 AM, windows2 said:

Hello, I work with a program that is a little complicated and always exposed to BSOD that is difficult to fix  , and I cannot explain how to use it in writing :) ,

I decided at the beginning and I aspire to add as many missing DLL's functions as possible. I hope to continue my way, and I will do my best to add missing features and run as many modern programs as possible.

For Active Desktop Update shell maybe :) 

I discovered that this method is different from the @win32 method, and his method is easier if you are good at writing inline assembly code 

Ok, but after modifying the cpp file, how would you compile it into a dll? @win32

Link to comment
Share on other sites


1 hour ago, testaccount66766 said:

Ok, but after modifying the cpp file, how would you compile it into a dll? @win32

win32 forgot to mention that it should be just "kernel33" and not "kernel33.dll" when typing the library name into scanexp.
Make another .cpp file and add it  your new function code in scanexp folder, then also make a .def or .src file formatted like this
 

EXPORTS

NewFunctionName

NewFunctionName2

Then when you compile, the forwards to the old functions as well as the new functions will be in the DLL.

this is what win32 told me , if there is an other question ask him :) 

Link to comment
Share on other sites

  • 2 weeks later...
On 7/25/2022 at 8:15 PM, Leokids123 said:

Im happy we will get a extended kernel....

 

But...can you try Firefox 12 or Opera 12.01?

I will try, to run them after adding the missing functions, I found that NT4 needs very difficult changes in win32k.sys, and windows nt does not have any display function on win32k.sys and these function required for user32.dll new monitor API's, so i should create all display kernel driver for nt 4 , but until now i don't have any tool can do this, 

Link to comment
Share on other sites

On 7/9/2022 at 2:36 AM, testaccount66766 said:

Nice! I can't wait to try it once you're ready to release it if ever. However, I have a few questions. Once you have your kernelex finished, will will work with the Active Desktop Update shell?, and you said earlier that the way you did it is slightly different from how Win32 did it:

Could you briefly explain how you did it? Did it involve writing code? Otherwise, great to see the progress you're making on this.

hi @testaccount66766 , you can add the active desktop feature with installing Microsoft Internet Explorer 4.0 ;)  https://archive.org/details/ie4-win95-winnt

Edited by windows2
Link to comment
Share on other sites

  • 4 weeks later...
13 hours ago, testaccount66766 said:

Any progress since you said you were stuck on the driver part?

I have been trying all this time to add these shortcomings to win32k.sys , but all my attempts failed and caused BSOD, I used several tools such as cffExplorer and HxD and it did not work, I am worried about this issue, adding an API is easy, but if it is linked to win32k .sys and there are  problem of a missing functions  it becomes very complicated.

the problem is that NT4 don't has any monitor APi as NtUserEnumDisplayMonitors and ...

Edited by windows2
Link to comment
Share on other sites

17 hours ago, windows2 said:

I have been trying all this time to add these shortcomings to win32k.sys , but all my attempts failed and caused BSOD, I used several tools such as cffExplorer and HxD and it did not work, I am worried about this issue, adding an API is easy, but if it is linked to win32k .sys and there are  problem of a missing functions  it becomes very complicated.

the problem is that NT4 don't has any monitor APi as NtUserEnumDisplayMonitors and ...

Why don't you think about it the other way around?

NT4 don't have DisplayMonitor API .

So any application should be changed not to use Display Monitor APIs or be able to Ignore these APIs.

Link to comment
Share on other sites

13 hours ago, blackwingcat said:

Why don't you think about it the other way around?

NT4 don't have DisplayMonitor API .

So any application should be changed not to use Display Monitor APIs or be able to Ignore these APIs.

Hi , It may seem boring if I modify every app to be compatible with NT4,i think the Display monitor it required for new web browser , I will see and I will try to do this withe some APP, but now I am very busy with my other work, I will come back to this project when I have time .

Clarification to the public ;

As I indicated in the title, I am trying and I hope to be successful in this project :) 

There are a lot of things I need to learn and gain experience ,this job requires a lot of experience 

Edited by windows2
Link to comment
Share on other sites

14 hours ago, blackwingcat said:

or be able to Ignore these APIs.

Fortunately many apps already can. That's why failure stubs are so very effective. Microsoft put lots of them into 9x to improve compatibility with NT apps.

 

Link to comment
Share on other sites

  • 1 month later...
  • 3 months later...
19 minutes ago, mina7601 said:

Any progress in this? I hope the project is still alive!

The project is suspended until the summer because I do not have any time at the moment. There are missings in win32k.sys and I should to see how to add them , for the moment i don't know how to do that . i hope if any one here in MSFN know how to add monitor api's which NT4 don't have any api monitor , it's not good to modify the application to ignore the monitor api's , and i think  this way don't work in all application .

Link to comment
Share on other sites

  • 7 months later...

Windows NT4 Extended kernel

Hello everyone,

During my free time this summer, I made an effort to work on NT4 win32k.sys . Unfortunately, the development of user32.dll is currently on hold. I need to find a solution for integrating structs into win32k.sys. This task has been challenging, as I've been constantly dealing with BSOD errors. Despite the difficulties, I've gained valuable experience from this process. It has been both exhausting and beneficial.

I've compiled the files I've developed into a small update, which you can access through the link below. However, before installing this update, make sure to have IE4 and then IE6 installed.

SP6AI386 .exe installed on SP1 ISO is required 

IE4 LINK >> standard installation >> accept add active Desktop feature .

IE6 LINK

Small Stable NT4KernelEx >> Mega link

If you prefer automatic login >> Mega link

You can try ;) 

 Added API's :

 

KERNEL32.DLL:
Heap32ListFirst
Heap32ListNext
Heap32First
Heap32Next
Toolhelp32ReadProcessMemory
Process32FirstW
Process32First
Process32NextW
Process32Next
Thread32First
Thread32Next
Module32FirstW
Module32First
Module32NextW
Module32Next
CreateToolhelp32Snapshot

shell32.dll: 
SHGetFolderPathW


SETUPAPI.DLL :
SetupDiEnumDeviceInterfaces
pSetupMalloc
pSetupRealloc

ADVAPI32.DLL :
ConvertSidToStringSidW

OLE32.DLL :
CoWaitForMultipleHandles

user32.dll:

GetLayeredWindowAttributes
GetMonitorInfoW
MonitorFromPoint
MonitorFromRect
SetLayeredWindowAttributes

EnumDisplayMonitors

GetMonitorInfoA
MonitorFromWindow

Edited by windows2
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...