Skip to content
View in the app

A better way to browse. Learn more.

MSFN

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Giving Your Windows Cosmetic Surgery

Featured Replies

I guess by path variable you mean:

"UIHost"="%systemdrive%\\Resources\\LogonUI\\custom.exe"

I think you mean "UIHost"="%WINDIR%\\Resources\\LogonUI\\custom.exe". But the problem is that the reg-files don't have a simple syntax for REG_EXPAND_SZ values. The above example would be ...

"UIHost"=hex(2):25,00,41,00,4c,00,4c,00,55,00,53,00,45,00,52,00,53,00,50,00,52,\

00,4f,00,46,00,49,00,4c,00,45,00,25,00,5c,00,44,00,6f,00,6b,00,75,00,6d,00,\

65,00,6e,00,74,00,65,00,5c,00,45,00,69,00,67,00,65,00,6e,00,65,00,20,00,42,\

00,69,00,6c,00,64,00,65,00,72,00,5c,00,4c,00,6f,00,67,00,6f,00,6e,00,20,00,\

53,00,63,00,72,00,65,00,65,00,6e,00,73,00,5c,00,64,00,65,00,5c,00,53,00,75,\

00,6e,00,73,00,65,00,74,00,20,00,43,00,61,00,76,00,65,00,73,00,2e,00,65,00,\

78,00,65,00,00,00

Let me quote the Platform SDK:

REG_EXPAND_SZ

Null-terminated string that contains unexpanded references to environment variables (for example, "%PATH%"). It will be a Unicode or ANSI string, depending on whether you use the Unicode or ANSI functions.


or you could do this.....

;
; Version 2.0
;

[version]
signature = "$CHICAGO$"
Compatible = 1
AdvancedINF = 2.5,"You need a newer version of AdvPack.DLL!"
LayoutFile = layout.inf, layout1.inf, layout2.inf


[DefaultInstall]
AddReg  = Add

[Add]
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","UIHost",0x00020000,"%systemroot%\Resources\LogonUI\logonui.exe"

save as inf.

and then somewhere probally after your other reg commands add this....

"RunDll32.exe setupapi,InstallHinfSection DefaultInstall 128 %Path to INF%"

or you could do this.....

;
; Version 2.0
;

[version]
signature = "$CHICAGO$"
Compatible = 1
AdvancedINF = 2.5,"You need a newer version of AdvPack.DLL!"
LayoutFile = layout.inf, layout1.inf, layout2.inf


[DefaultInstall]
AddReg  = Add

[Add]
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","UIHost",0x00020000,"%systemroot%\Resources\LogonUI\logonui.exe"

save as inf.

and then somewhere probally after your other reg commands add this....

"RunDll32.exe setupapi,InstallHinfSection DefaultInstall 128 %Path to INF%"

if i understand you correctly, i would for example copy logonui.exe to $OEM$\$$\Resources\LogonUI\ then create logon.inf in $OEM$\$1\install\logon\ with the text you have in the (CODE) tags, then in one of the [GUIRUNONCE] .cmd files i would put:

ECHO Installing custom logon screen
RunDll32.exe setupapi,InstallHinfSection DefaultInstall 128 %systemdrive%\install\logon\logon.inf

is that right? or do i need the quotes or a different path for that last line?

thanks a bunch :)

All I am doing is the following and it works:

Place my alternate logonui.exe in $OEM$\$$\Resources\LogonUI\ .

Then I run the following during [GuiRunOnce]

Windows Registry Editor Version 5.00 

;Set LogonUI to alternate
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"UIHost"="C:\\Windows\\Resources\\LogonUI\\logonui.exe"

Since this works, can you tell me why I would want to change to either of the ways listed above?

if you use the inf file....then you wouldn't have to even ponder if your Windows drive letter changes....

the inf allows the use of a variable path, while the reg file you're using only allows for static.

what if your drive for somereason became D: instead of C:?

it would work, but only if you $OEM$ folder has this structure

$OEM$

|- C

||- Windows\Resources\Logoniui

while the inf allows you to use

$OEM$

|- $$

||- Resources\Logoniui

without problems..

as for mots41, yes that SHOULD work.

b0r3d,

In your guide to creat a custom Boot Screen you mention making a BootLogo.cmd containing the following:

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

bootcfg /Timeout 0

and calling it from GuiRunOnce.

[GUIRunOnce]

bootlogo.cmd

Can you tell me where I should place the Bootlog.cmd file, and in GuiRunOnce when the BootLogo.cmd is call do I have to indicate a location such as

%systemdrive%/install/bootlogo.cmd so it knows where I placed the bootlogo.cmd file??? :)

Great help guide.

Thanks

b0r3d,

In your guide to creat a custom Boot Screen you mention making a BootLogo.cmd containing the following:

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

bootcfg /Timeout 0

and calling it from GuiRunOnce.

[GUIRunOnce]

bootlogo.cmd

Can you tell me where I should place the Bootlog.cmd file, and in GuiRunOnce when the BootLogo.cmd is call do I have to indicate a location such as

%systemdrive%/install/bootlogo.cmd so it knows where I placed the bootlogo.cmd file??? :)

Great help guide.

Thanks

YES. You need to place it wherever you want (usually install folder) and yes you need to give full path in the [GuiRunOnce] section just ike you have shown.

Bored needs to edit one of those lines:

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

should be:

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

(remove the space between the slash and Kernal.)

Geckotek,

I thought so, but I just wanted to make sure.

Thanks for the correction as well.

Using the directions in this thread I installed a SP1 Boot screen I obtained from ThemeXP.

The install using VPC goes well and the custom Boot Screen is present after the restart but after the desktop loads the OS shuts down and restarts. This continues after each time the system restarts. :rolleyes:

I used two different premade ntoskrnl.exe files from ThemeXP and renamed them accordingly with the same results.

I used the following code in my BootLog.cmd file

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

bootcfg /Timeout 0

Any ideas what I may be doing wrong. :)

My guess would be the problem isn't related. Did you change anything else?

The only other explanation I can come up with is you've used the wrong version. Make sure you have the version for your version of XP (SP1 or not.) But I think you'd have issues long before the desktop loads if you had the wrong version.

  • Author

Okay, i fixed the typo in the bootlogo.cmd.

You guys are pretty quick at picking these things up :)

My guess would be the problem isn't related. Did you change anything else?

The only other explanation I can come up with is you've used the wrong version. Make sure you have the version for your version of XP (SP1 or not.) But I think you'd have issues long before the desktop loads if you had the wrong version.

My unattaned install worked fine until I attempted to use the custom Boot Screen.

My Unattended Install consists of an Slipstreamed SP1A into my original XP Pro. therefore I assumed I should use the SP1 ntoskrnl.exe.

Last night I used Resource Hacker to check the original ntoskrnl.exe in my Unattended install and it indicates it is File/Prod #: 5.1.2600.1151, which I though is the Non SP1 Boot Screen. Instead of using the SP1 ntoskrnl.exe should I be using the non SP1 ntoskrnl.exe. :rolleyes: (Added: I tried usng the non Sp1 boot screen and it put me in a reboot loop after the boot screen appeared.)

you could be using a multiproc kernel instead of a single

How do I determine if I am using a Mlti Processor kernal? :)

Thanks

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.