Changing Xp logon screen
Changing Xp logon screen
Well people have been asking me how to change your XP logon and shutdown screen alot, So here is a tutorial I had in the forums a while back:
I'm going to start from the beginning so everyone can have some insight on changing the logon screen
This is long so bear with me.
This is how I've done it, Copy your logonui.exe to another folder usually the desktop we'll tear it up anyway.
Copy it so you don't lose the original! I always copy 2 just in case, one to the desktop and one to c:drive. We all have bad days.
Open the resourcehacker, Open your COPY of the logonui.exe.
Go to the bitmap>100>1033. That is your background, Now to change it go to "Action"(top pane) replace bitmap.
Click on 100 in the bottom, Then click "Open file with new bitmap". Navigate your way to your new bmp and click open, Then "Replace".
Go back to bitmap>100>1003 You'll see your new image.
Some things you can play with are:
Bitmap>102>1033 Change borders on password box or the box itself.
Bitmap>104>1033 The logon arrow styles.
Bitmap>123 & 127 The xp logo. Etc, etc look at all of them and mess around a bit.
Next we'll play in the String Table>1>1033. You can change messages in here, Like instead of "did you forget your password?.
I use "Quit Fucking with my computer damnit". Change any of the text to what you like.
Next you want Open the UIFILE>1000>1033 and look around at the code you can change lot's of stuff here, You gonna need to make some changes in the background and contentcontainer for your new image to display right otherwise it will only appear in the left corner.
This took me FOREVER to get right so since I'm a nice guy I'm gonna post my UIFILE and you can use it if you like, Or compare mine to your original windows. Hopefully by comparing the two it can give you some insight on how to change things.
Otherwise this is not a course in xml. Just paste this in your UIFILE: (Here comes the big one)
<style resid=framess>
element
{
background: argb(0,0,0,0);
}
element [id=atom(contentcontainer)]
{
background: rcbmp(100,6,#FF00FF,0,0,1,0);
}
button
{
background: rcbmp(112,6,#FF00FF,0,0,1,0);
borderthickness: rect(8,8,0,8);
}
</style>
<style resid=toppanelss>
element
{
background: argb(0,0,0,0);
}
element [id=atom(toppanel)]
{
fontface: rcstr(2);
}
element [id=atom(options)]
{
padding: rect(10rp, 5rp, 5rp, 0rp);
}
</style>
<style resid=bottompanelss>
element
{
background: argb(0,0,0,0);
}
element [id=atom(bottompanel)]
{
fontface: rcstr(2);
}
element [id=atom(options)]
{
padding: rect(25rp, 0rp, 5rp, 5rp);
}
button [id=atom(power)]
{
padding: rect(0rp, 0rp, 5rp, 15rp);
content: rcbmp(107,3,-1,26rp,26rp,0,0);
fontsize: rcint(45) pt;
fontstyle: italic;
fontweight: bold;
foreground: white;
cursor: hand;
}
button [id=atom(power)] [mousefocused]
{
content: rcbmp(121,3,-1,26rp,26rp,0,0);
foreground: rgb(241,185,102);
}
button [id=atom(power)] [keyfocused]
{
content: rcbmp(121,3,-1,26rp,26rp,0,0);
foreground: rgb(241,185,102);
}
button [id=atom(undock)]
{
padding: rect(0rp, 0rp, 5rp, 15rp);
content: rcbmp(108,3,-1,26rp,26rp,0,0);
fontsize: rcint(45) pt;
fontstyle: italic;
fontweight: bold;
foreground: rgb(255,255,255);
cursor: hand;
}
button [id=atom(undock)] [mousefocused]
{
content: rcbmp(122,3,-1,26rp,26rp,0,0);
foreground: rgb(241,185,102);
}
button [id=atom(undock)] [keyfocused]
{
content: rcbmp(122,3,-1,26rp,26rp,0,0);
foreground: rgb(241,185,102);
}
element [id=atom(instruct)]
{
contentalign: wrapright;
padding: rect(0rp,0,5,5);
fontsize: rcint(47) pt;
fontweight: bold;
foreground: white;
}
</style>
<style resid=leftpanelss>
element
{
background: argb(0,0,0,0);
fontface: rcstr(2);
}
element [id=atom(product)]
{
animation: alpha | s | mediumslow;
}
element [id=atom(leftpanel)]
{
foreground: rgb(255,255,255);
}
element[id=atom(help)]
{
fontsize: rcint(46) pt;
fontweight: bold;
contentalign: wrapleft;
}
</style>
<style resid=msgareass>
element
{
fontface: rcstr(2);
fontsize: rcint(44) pt;
fontweight: bold;
contentalign: middleright;
}
element [id=atom(welcome)]
{
foreground: rgb(252,253,255);
padding: rect(0rp,0rp,22rp,50);
}
element [id=atom(welcomeshadow)]
{
foreground: rgb(247,107,32);
padding: rect(2rp,3rp,20rp,50);
}
</style>
<style resid=rightpanelss>
element
{
background: argb(0,0,0,0);
fontface: rcstr(2);
}
scrollbar [vertical]
{
layoutpos: nineright;
background: rgb(115,146,231);
}
viewer
{
layoutpos: nineclient;
}
thumb
{
background: rcbmp(111,6,#FF00FF,0,0,1,0);
borderthickness: rect(3,3,3,3);
}
repeatbutton [id=atom(lineup)]
{
content: rcbmp(110,3,-1,sysmetric(20),sysmetric(20),0,0);
}
repeatbutton [id=atom(linedown)]
{
content: rcbmp(109,3,-1,sysmetric(20),sysmetric(20),0,0);
}
</style>
<style resid=hotaccountlistss>
element
{
background: argb(0,0,0,0);
fontface: rcstr(2);
}
selector
{
padding: rect(0rp,60rp,5rp,50rp);
}
logonaccount
{
cursor: hand;
foreground: rgb(0,0,0);
background: argb(0,0,0,0);
animation: alpha | log | fast;
alpha: 255;
}
logonaccount [logonstate=1]
{
animation: rectangle | s | fast;
cursor: arrow;
alpha:255;
}
logonaccount [mousewithin]
{
cursor: hand;
alpha:255;
}
logonaccount [selected]
{
cursor: hand;
alpha:255;
}
element [id=atom(userpane)]
{
padding: rect(2rp,2rp,14rp,2rp);
fontsize: rcint(42) pt;
}
element [id=atom(userpane)][selected]
{
background: rcbmp(112,6,#FF00FF,0,0,1,0);
}
element [id=atom(pictureframe)]
{
background: rcbmp(113,7,255,0,0,1,0);
borderthickness: rect(5,5,5,5);
margin: rect(0,0, 7rp,0);
}
element [id=atom(pictureframe)] [mousefocused]
{
background: rcbmp(119,7,255,0,0,1,0);
borderthickness: rect(5,5,5,5);
margin: rect(0,0,7rp,0);
alpha: 255;
}
element [id=atom(pictureframe)] [keyfocused]
{
background: rcbmp(119,7,255,0,0,1,0);
borderthickness: rect(5,5,5,5);
margin: rect(0,0,7rp,0);
alpha: 255;
}
element [id=atom(pictureframe)] [selected]
{
background: rcbmp(119,7,255,0,0,1,0);
borderthickness: rect(5,5,5,5);
margin: rect(0,0,7rp,0);
alpha: 255;
}
element [id=atom(username)]
{
foreground: white;
contentalign: endellipsis;
fontweight: bold;
}
element [id=atom(username)][mousefocused]
{
foreground: white;
contentalign: endellipsis;
}
element [id=atom(username)][keyfocused]
{
foreground: white;
contentalign: endellipsis;
}
element [id=atom(username)][selected]
{
foreground: white;
contentalign: endellipsis;
}
button [class="status"]
{
background: argb(0,0,0,0);
foreground: rgb(255,255,255);
fontsize: rcint(47) pt;
fontweight: bold;
}
button [class="status"][mousefocused]
{
foreground: rgb(255,255,255);
fontstyle: underline;
}
button [class="status"][keyfocused]
{
foreground: rgb(255,255,255);
fontstyle: underline;
}
button [class="status"][selected]
{
foreground: rgb(255,0,0);
}
</style>
<style resid=accountlistss>
element
{
background: argb(0,0,0,0);
fontface: rcstr(2);
}
selector
{
padding: rect(0rp,60rp,5rp,50rp);
}
logonaccount
{
cursor: hand;
foreground: rgb(0,0,0);
background: argb(0,0,0,0);
animation: alpha | log | fast;
alpha: 255;
}
logonaccount [logonstate=1]
{
animation: rectangle | s | fast;
cursor: arrow;
alpha:255;
}
element [id=atom(userpane)]
{
padding: rect(2rp,2rp,14rp,2rp);
borderthickness: rect(0,0,0,0);
bordercolor: rgb(43,102,159);
fontsize: rcint(42) pt;
}
element [id=atom(userpane)][selected]
{
background: rcbmp(112,6,#FF00FF,0,0,1,0);
}
element [id=atom(pictureframe)]
{
background: rcbmp(113,7,255,0,0,1,0);
borderthickness: rect(5,5,5,5);
margin: rect(0,0,7rp,0);
}
element [id=atom(username)]
{
foreground: rgb(255,0,0);
fontweight: bold;
contentalign: endellipsis;
}
button [class="status"]
{
background: argb(0,0,0,0);
foreground: rgb(255,255,255);
fontsize: rcint(47) pt;
fontweight: bold;
contentalign: wrapleft;
}
</style>
<style resid=passwordpaness>
element
{
background: argb(0,0,0,0);
}
element [id=atom(passwordpanelayer)]
{
padding: rect(71rp,0,0,0);
}
element [id=atom(instruct)]
{
fontface: rcstr(2);
fontsize: rcint(47) pt;
foreground: rgb(253,245,255);
padding: rect(3rp,0,0,3rp);
}
edit [id=atom(password)]
{
background: rcbmp(102,6,#FF00FF,0,0,1,0);
borderthickness: rect(3,3,5,5);
passwordcharacter: 9679;
fontface: "Arial";
fontsize: 16pt;
}
button [id=atom(go)]
{
margin: rect(5rp,0,0,0);
content: rcbmp(103,3,-1,24rp,24rp,0,0);
padding: rect(0rp,2rp,0,2rp);
}
button [id=atom(go)][mousefocused]
{
content: rcbmp(104,3,-1,24rp,24rp,0,0);
}
button [id=atom(go)][keyfocused]
{
content: rcbmp(104,3,-1,24rp,24rp,0,0);
}
button [id=atom(info)]
{
margin: rect(5rp,0,0,0);
content: rcbmp(105,3,-1,24rp,24rp,0,0);
padding: rect(0rp,2rp,0,2rp);
}
button [id=atom(info)][mousefocused]
{
content: rcbmp(106,3,-1,24rp,24rp,0,0);
}
button [id=atom(info)][keyfocused]
{
content: rcbmp(106,3,-1,24rp,24rp,0,0);
}
element [id=atom(keyboard)]
{
cursor: arrow;
margin: rect(1rp,1,1,1);
}
</style>
<style resid=scroller>
scrollbar
{
layoutpos: ninebottom;
}
scrollbar [vertical]
{
layoutpos: nineright;
}
viewer
{
layoutpos: nineclient;
}
thumb
{
background: dtb(handlemap(1), 3, 1);
content: dtb(handlemap(1), 9, 1);
contentalign: middlecenter;
}
thumb [mousefocused]
{
background: dtb(handlemap(1), 3, 2);
content: dtb(handlemap(1), 9, 2);
}
thumb [captured]
{
background: dtb(handlemap(1), 3, 3);
content: dtb(handlemap(1), 9, 3);
}
repeatbutton [id=atom(lineup)]
{
background: dtb(handlemap(1), 1, 1);
width: sysmetric(2);
height: sysmetric(20);
}
repeatbutton [id=atom(lineup)][mousefocused]
{
background: dtb(handlemap(1), 1, 2);
}
repeatbutton [id=atom(lineup)][pressed]
{
background: dtb(handlemap(1), 1, 3);
}
repeatbutton [id=atom(linedown)]
{
background: dtb(handlemap(1), 1, 5);
width: sysmetric(2);
height: sysmetric(20);
}
repeatbutton [id=atom(linedown)][mousefocused]
{
background: dtb(handlemap(1), 1, 6);
}
repeatbutton [id=atom(linedown)][pressed]
{
background: dtb(handlemap(1), 1, 7);
}
repeatbutton [id=atom(pageup)]
{
background: dtb(handlemap(1), 7, 1);
}
repeatbutton [id=atom(pageup)][mousefocused]
{
background: dtb(handlemap(1), 7, 2);
}
repeatbutton [id=atom(pageup)][pressed]
{
background: dtb(handlemap(1), 7, 3);
}
repeatbutton [id=atom(pagedown)]
{
background: dtb(handlemap(1), 6, 1);
}
repeatbutton [id=atom(pagedown)][mousefocused]
{
background: dtb(handlemap(1), 6, 2);
}
repeatbutton [id=atom(pagedown)][pressed]
{
background: dtb(handlemap(1), 6, 3);
}
</style>
<logonframe resid=main id=atom(frame) sheet=styleref(framess) layout=borderlayout() layoutpos=client>
<element id=atom(contentcontainer) layout=borderlayout() layoutpos=client>
<element id=atom(toppanel) sheet=styleref(toppanelss) layout=borderlayout() layoutpos=top height=0rp>
<element id=atom(options) layout=borderlayout() layoutpos=top>
<element layout=filllayout() layoutpos=right>
</element>
</element>
</element>
<element id=atom(bottompanel1) sheet=styleref(bottompanelss) layout=borderlayout() layoutpos=bottom height=25rp>
<element id=atom(options) layout=borderlayout() layoutpos=bottom>
<element layout=filllayout() layoutpos=right>
<element id=atom(instruct) content=rcstr(25) width=200rp/>
</element>
</element>
</element>
<element id=atom(bottompanel2) sheet=styleref(bottompanelss) layout=borderlayout() layoutpos=bottom height=85rp>
<element id=atom(options) layout=borderlayout() layoutpos=bottom>
<element layout=filllayout() layoutpos=right>
<button id=atom(power) layout=borderlayout() layoutpos=bottom accessible=true accRole=43 accName=rcstr(11)>
<element layoutpos=left height=26rp/>
<element id=atom(label) layoutpos=left margin=rect(30rp,0,0,0)/>
</button>
<button id=atom(undock) layout=borderlayout() layoutpos=bottom accessible=true accRole=43 accName=rcstr(14)>
<element layoutpos=left height=26rp/>
<element id=atom(label) layoutpos=left margin=rect(30rp,0,0,0)/>
</button>
</element>
</element>
</element>
<element id=atom(contentcontainer0) layout=filllayout() layoutpos=client>
<element id=atom(contentcontainer1) layout=filllayout() layoutpos=left width=484rp>
<element id=atom(leftpanel) sheet=styleref(leftpanelss) layout=filllayout() layoutpos=left>
<element layout=filllayout() layoutpos=bottom>
<element id=atom(logoarea) layout=verticalflowlayout(0,3,3,2)>
<element id=atom(product) contentalign=topright padding=rect(0rp,0rp,0rp,0rp) content=rcbmp(123,0,0,0,0,0,0)
background=argb(0,0,0,0)/>
<element id=atom(help) contentalign=wrapleft padding=rect(100rp,0rp,0rp,100rp)/>
</element>
</element>
</element>
</element>
<element id=atom(contentcontainer2) layout=flowlayout(1,3,2,3) layoutpos=left width=512rp>
<element id=atom(leftpanel) sheet=styleref(leftpanelss) layout=borderlayout() layoutpos=right width=384rp>
<scrollviewer id=atom(scroller) sheet=styleref(scroller) layoutpos=top xscrollable=false margin=rect(26rp,26rp,0rp,0rp)>
<selector id=atom(accountlist) sheet=styleref(accountlistss) layout=verticalflowlayout(0,3,3,2)/>
</scrollviewer>
</element>
</element>
<element id=atom(contentcontainer3) layout=filllayout() layoutpos=left width=500rp>
<element id=atom(msgarea) sheet=styleref(msgareass) layout=filllayout() layoutpos=right width=300rp>
<element layout=filllayout() layoutpos=client>
<element id=atom(welcomeshadow) content=rcstr(7)/>
<element id=atom(welcome) content=rcstr(7)/>
</element>
</element>
</element>
</element>
</element>
</logonframe>
<logonaccount resid=accountitem id=atom(accountitem) layout=filllayout() accessible=true accRole=43>
<element id=atom(userpanelayer) layout=borderlayout() height=80rp>
<element id=atom(userpane) layout=borderlayout() layoutpos=top>
<element id=atom(pictureframe) layout=flowlayout(0,2,2) layoutpos=left width=58rp height=58rp>
<element id=atom(picture) />
</element>
<element id=atom(username) layoutpos=top/>
<button id=atom(status0) class="status" layoutpos=none/>
<button id=atom(status1) class="status" layoutpos=none/>
</element>
</element>
</logonaccount>
<element resid=passwordpanel id=atom(passwordpanelayer) sheet=styleref(passwordpaness) layout=borderlayout() height=80rp>
<element layout=borderlayout() layoutpos=bottom>
<edit id=atom(password) layoutpos=left width=163rp/>
<element id=atom(keyboard) layoutpos=left/>
<button id=atom(go) layoutpos=left accessible=true accRole=43 accName= rcstr(100)/>
<button id=atom(info) layoutpos=left accessible=true accRole=43 accName= rcstr(13)/>
</element>
<element id=atom(instruct) layoutpos=bottom content=rcstr(6)/>
</element>
When you're done compile the script
Like I said go over the code you can change fonts,size,colors etc,etc. Move the logon box from left to right. This would take forever to explain so have fun.
If you want you can change the version info>1>1033. Edit it to your name, company, Mickey mouse whatever you want.
When your all done click on file>save as> "logonui.exe" and save it in my documents or somewhere for now NOT the system32 folder.
Reboot in safe mode and replace your original logonui.exe with the new one.(system32 folder) Or navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon. Find the UIHost and change the path to where your new logonui.exe is saved.
Restart and we are done. Make sure you keep that extra copy hidden incase you want to change it back someday.
Save it on cd. I did just in case.
Have fun and change as much as you can it get's fun.
Or you could be a pussy and download StyleXP or Stardock LogonStudio.
Thanks for reading any comments or suggestions welcome.
KORG "The Destroyer"
korg 15 years ago
Wtf, 180 reads so far and no comments, is this over everybodies head or what? Fuck it I'm rating it myself.
ghost 15 years ago
A good article. Easy to read and the right level of detail. The long code part messes up the rest of the article cause you have to scroll down a LOT. But got nothing else to complain about.
korg 15 years ago
Yeah the code for the UIFILE is a bit long but I wanted to include my own so people can compare mine with the original and see what can be changed.
ghost 15 years ago
I tried changing the logon image from default blue to a bmp image but whenever my pc reboots it says error with logonui.exe. Do we have to save that image in the system32 folder or am I missing something and I m using xp.
htmldesigner 15 years ago
Very informative and well written article I particularly liked the friendly reminder about backing up the logonui file to help prevent one of life's little inconveniences.;)
korg 15 years ago
@harry_potter28 Reread the article. If you still have problems pm me, I'll help you out.