Jump to content

SP2 NTOSKRNL.EXE Problems.


Denney

Recommended Posts

Go to LogonUI

and you'll find a program called LOGONUI, run it.

Point it to the boot screen you use, and if the version doesn't match up, it'll convert it for you. It will probably make a copy of the file, and rewrite your BOOT.ini file, but thats not too big of a deal. The boot.ini file will point you to wherever LOGONUI places the new boot screen (it also renames it to KERNEL1).

Find that screen, slipstream it into your disc, and you're in buisness.

It really easy.

Personally all i do is put my KERNEL1 file into my system32 directory, and set up a batch file that will rewrite my boot.ini file to point to KERNEL1, that way if for some reason the original is ever needed, it can be gotten easily.

Link to comment
Share on other sites


@Alanoll: I've modified both and it seems to install the MP one still (but Windows still won't boot because it's not a MP system). I know I'm hexing the correct places because if I replace it manually, all works fine. :blink:

@MHz: Doing that works. But Windows has a tendancy to freeze afterwards (probably because Windows was installing the MP version).

Personally, I've just created a batch file that will replace after first boot (using my software selection program). That way, it's also selectable during setup so if I have another boot screen I can install it instead (using update CDs).

So, I've made my own workaround for it and even found a bonus in using that workaround.

Thanks for your help anyway guys.

Link to comment
Share on other sites

Hey Alanoll, could you please explain the method you use to randomize bootscreens on the cd?

I have 2 favs wich I can't choose from, with your help I could use 'em both, and maybe expand my choices in a while.

Thanks (a lot)

Link to comment
Share on other sites

well to use random.....

SET /A NUM=%RANDOM% %% 2
IF NUM=1 GOTO Num1
:Num0
(Stuff for screen one)
GOTO END
:Num1
(Stumd for screen two)
GOTO END
:END

That's basically it. %RANDOM% is on EVERY NT system, and changes EVERY time you use it. %% 2 is modular arithmetic, and basically divides everything by 2 and stores the remainder in NUM, which can only be 0 1. If you used 3, you options would be 0 1 2.

Link to comment
Share on other sites

ok thanks for the code but where does the code go? I assume in a batch file that you call from [GuiRunOnce] in winnt.sif?

Also, '(Stuff for screen one)' is the place to put what (exactly)?

I'm guessing here but could this be correct for use with 6 different bootscreens?

SET /A NUM=%RANDOM% %% 6

IF NUM=1 GOTO Num1

IF NUM=2 GOTO Num2

IF NUM=3 GOTO Num3

IF NUM=4 GOTO Num4

IF NUM=5 GOTO Num5

:Num0

bootcfg /RAW /A /Kernel=OEMKrnl0.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num1

bootcfg /RAW /A /Kernel=OEMKrnl1.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num2

bootcfg /RAW /A /Kernel=OEMKrnl2.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num3

bootcfg /RAW /A /Kernel=OEMKrnl3.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num4

bootcfg /RAW /A /Kernel=OEMKrnl4.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num5

bootcfg /RAW /A /Kernel=OEMKrnl5.exe /ID 1

bootcfg /Timeout 0

GOTO END

:END

Link to comment
Share on other sites

unless your system has over i think 3 gigs of ram, these will NEVER be used.

Yes, we know that...

But that day is not very far off. What with Doom3 and HL2 and all....

And 64-bit PCs ship with plenty of RAM too. So we'd rather have all of the kernels modified than suddenly be surprised by discrepancies that happen when we have 1 out of 2 modules of 4 GB RAM taken out for testing, lol.

Link to comment
Share on other sites

I tried the random bootscreen but it doesn't work (yet).

I called a oemkernel.cmd file with the codes above as the first thing in RunOnceEx. I think it has been executed but as I said but it doesn't work. Any ideas?

Edit;

I used a spare hd for testing the commands, it seems it doesn't work. I must have tried a trillion changes (some very doubtfull, but that's beside the point).

Normally the script should add '/Kernel=OEMKrnl0.exe' tot the boot.ini, right? And that via bootcfg, right?

Script in RunOnceEx:

REG ADD %KEY%\001 /VE /D "Setting custom kernel..." /f

REG ADD %KEY%\001 /V 1 /D "%systemdrive%\install\Kernel.cmd" /f

Script in Kernel.cmd:

cmdow @ /HID

SET /A NUM=%RANDOM% %% 10

IF NUM=1 GOTO Num1

IF NUM=2 GOTO Num2

IF NUM=3 GOTO Num3

IF NUM=4 GOTO Num4

IF NUM=5 GOTO Num5

IF NUM=6 GOTO Num6

IF NUM=7 GOTO Num7

IF NUM=8 GOTO Num8

IF NUM=9 GOTO Num9

:Num0

bootcfg /RAW /A /Kernel=OEMKrnl0.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num1

bootcfg /RAW /A /Kernel=OEMKrnl1.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num2

bootcfg /RAW /A /Kernel=OEMKrnl2.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num3

bootcfg /RAW /A /Kernel=OEMKrnl3.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num4

bootcfg /RAW /A /Kernel=OEMKrnl4.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num5

bootcfg /RAW /A /Kernel=OEMKrnl5.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num6

bootcfg /RAW /A /Kernel=OEMKrnl6.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num7

bootcfg /RAW /A /Kernel=OEMKrnl7.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num8

bootcfg /RAW /A /Kernel=OEMKrnl8.exe /ID 1

bootcfg /Timeout 0

GOTO END

:Num9

bootcfg /RAW /A /Kernel=OEMKrnl9.exe /ID 1

bootcfg /Timeout 0

GOTO END

:END

EXIT

Link to comment
Share on other sites

I should note...

unless your system has over i think 3 gigs of ram, these will NEVER be used.

ntkrnlpa.exe

ntkrpamp.exe

the trick is in that that all kernels must be modified, so that no one has digital signature;

otherwise windows may replace your kernel with wrong one.

Link to comment
Share on other sites

hmm, fresh install of windows, and I just ececute the kernel.cmd. It didn't work and so the boot.ini file does not change.

I did a little research and this however, DOES change the boot.ini

@echo off

echo.

bootcfg /RAW /A "/Kernel=OEMKrnl0.exe" /ID 1

bootcfg /Timeout 0

PAUSE

EXIT

There has to be a " to open and close.

So my conclusion is that the first part doesn't work.

I tried

IF %NUM%=1 GOTO Num1, ... but no avail.

Any clues? I will do further research myself but help is welcome.

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...