XP系统启动画面修改---手动修改
如果大家更改过Windows 2000启动LOGO,那么当你在Windows XP上也使用这种方法的话,就会发现在ntoskrnl.exe中的资源只是一片黑。其实,这个方法是对的,但是由于Windows XP中的调色板发生了改变,所以修改方法需要做一些改变,不过大致是一样的。现在我们就来详细地了解如何在Windows XP下改变启动LOGO。
首先,我们简述一下原理:Windows XP启动时的LOGO放在Windows XP操作系统所在盘的:\windows\system32\ ntoskrnl.exe中,我们改变启动时的LOGO其实就是修改这个可执行程序中的资源来达到目的的。
我们需要的工具是:
Resource Hacker
PhotoShop
16.act (这个颜色表文件不是必需,但有了更好)
第一步:做好备份。为了避免改动失败造成操作系统不能启动,我们不直接修改ntoskrnl.exe,而是做一个ntoskrnl.exe的拷贝,并命名为kernel.exe,放在Windows XP操作系统所在盘的:\windows\system32\下,这就是我们要修改的文件。
第二步,下载并解压Resource Hacker
第三步,使用Resource Hacker打开我们刚才创建的kernel.exe。
第四步,到BITMAP下文件夹1下,在一个小花图标上点右键,选择“save resource”。将其保存下来。在这里我保存为1.bmp。(如图1)你是不是很奇怪,怎么是一片黑?没错,只是我们现在看不到它的本来面貌而已。
位图1: 是启动屏幕。
位图2: 是"休眠中" +进度条盒子。
位图3: 是“你可以安全地关机了”。
位图4: 是进度条,灰色。
位图5: 是Windows标志 黑色的背景。
位图6: 是白色的Windows标志 ,蓝色背景。
位图7: 卷轴(蓝,橙, ? )
位图8: 是PROFESSIONAL(专业版)的进度条,蓝色
位图10: 是PROFESSIONAL(专业版)的标志图像
位图9: 是HOME EDITION版(家庭版)的进度条,绿色
位图11: 是HOME EDITION(家庭版)的标志图像
位图12: 是EMBEDDED不知道是什么版本的标志图像
第五步,重复第四步,把文件夹8、9、10、11下的图片都保存下来。
第六步,把Resource Hacker最小化,打开Photoshop。
第七步,用Photoshop打开文件1.bmp(我们先假设你有16.act这个颜色表文件。如果没有那就先看制作颜色表文件中的做法,做出这个颜色表文件之后再继续)。选择“图像”—“模式”下的“颜色表”,在弹出的颜色表对话框中选择“载入”,载入16.act。(win.pal文件。这是Paintshop Pro的调色板文件。如果你只有Photoshop也没关系,Paintshop Pro的pal文件其实也是一个文本文件,里面的内容定义了渐增的RGB值。
你可以自己用记事本打开,从第3排开始找到定义的RGB值,然后在Adobe Color Table format中输入即可(还好只有16色)。我刚开始就是这样做的,但是现在你也可以去下载对应的Photoshop文件了,分别是:16.act和win.pal。)
第八步,修改LOGO。好了,现在我们已经见1.bmp的真面貌了(如图3)。我们要做的事就是尽我们的想像力去修改出我们自己个性化的LOGO了。修改后保存。对应的图像应该是:1,8,10
第九步,修改其它图像。在XP启动的时候,还有一个表明是HOME EDITION版还是PROFESSIONAL版的标志图像(还有一个是EMBEDDED,不知道是什么版本),以及一个不停流动的长条(见图4)。HOME EDITION版对应的资源分别是9和11,而PROFESSIONAL版则对应的是8和10。我们根据自己的操作系统修改相应的图像即可。分别编辑完毕以后,再按Shift+O,载入刚才下载的另外一个pal文件:win.pal(photoshop同理),这时候图片应该再次变黑,保存。
第十步,取代kernel.exe中的原始图像。将刚才最小化的Resource Hacker恢复。在工具栏上选择“操作(Action)”下的“替换位图(Replace Bitmap)”。选择“打开新位图文件(Open file with new bitmap)”,在弹出的对话框中选择刚才我们修改了的图像(可能只是第一个,也许有其它两个),并在右下角的“选择要替换的位图(Select bitmap to replace)”中选择相应的图像。按下“替换(replace)”。全部代替完后保存。
第十一步,告诉系统使用我们修改后的文件启动。其实我们可以直接将我们修改后的kernel.exe代替系统的 ntoskrnl.exe。不过这样既不安全也不方便。因为这还需要到DOS模式中去做,失败了就启动不了了。所以我们采取这样一种方法:修改 BOOT.INI文件。BOOT.INI是XP启动时配置文件,可以在C盘的根目录下找到,这是一个隐藏并且只读的文件。你在编辑它的时候要记得去掉只读属性。打开它后,它应该和下面这个差不多:
[boot loader]
timeout=20
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect
C:\="Microsoft Windows"
现在我们在[operating systems]节后加上这样一行:
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows new logo" /fastdetect /kernel=kernel.exe
其中引号中的内容随意改。Kernel.exe也是可以改的,只不过要保持在BOOT.INI中的开关中和系统目录下的一致。
补充:
ntoskrnl.exe修改开机画面没成功的处理方法!!
此文针对xp sp2用户用常规方法修改xp开机画面,包括修改替换ntoskrnl.exe,使用vista风格包和用过tuneup没有成功的情况!
很多人在使用vista风格包5。1之后发现,开机画面还是那个可恶的windows xp
我的同学就是这样的情况,于是他开始在网上疯狂的查找解决的方法,刚开始他用replacer替换ntoskrnl.exe,没成功后来又用tuneup结果系统都进不去了,他就找到了我,我在dos下删除了boot才进的系统,之后我就开始帮他找原因了,我刚开始是以为它的ntoskrnl.exe没有替换成功,我又替换了一次,但是没效果,不过让我苦恼的是ntoskrnl.exe文件大小已经改变,那说明替换成功了,那问什么没有作用呢??
看来系统不只是用到这个可执行文件,还有其他的文件也参与了工作,最后我还是找到了,这个文件就是ntkrnlpa.exe
而且他还是系统wfp的保护对象,不过也不难,在 hkey_local_machinesoftwaremicrosoftwindows ntcurrentversionwinlogon 下添加"sfcdisable" dword值:ffffff9d.就可以关闭wfp了,关闭之后就可以替换ntkrnlpa.exe文件了(你修改过的),
他和ntoskrnl.exe的结构一模一样,照着网上的教程改就对了,这里注意的是:一定要用同一版本的ntkrnlpa.exe文件(别把网上下载的ntoskrnl.exe重命名那用),要不然进不了系统的,最后还有ntkrnlpa.exe支持普通的32位图,呵呵我也不敢相信
重起机子后你就可以看到期盼已久的效果了,在这里还要注意的是不同版本的sp2可能还有类似ntoskrnl.exe的文件,像我的本本上ntkrpamp.exe ntkrnlup.exe和ntkrnlmp.exe 也和ntoskrnl.exe很像,这要看不同的情况了,不过大部分只有ntoskrnl.exe和ntkrnlpa.exe这两个文件!!
最后希望我的这篇文章能帮您解决这个问题!!!
自我解决了,也把方法告诉其他想换的朋友,很奇怪,我的XPSP2的开机文件不是ntoskrnl.exe,而是ntkrnlpa.exe,所以无论怎么改ntoskrnl.exe也无效,呵呵,不知道说ntoskrnl.exe是SP2开机文件的朋友的版本是不是不一样,我的是联想OEM的SP2正版,以下的修改方法适用这个版本,改ntoskrnl.exe无效的朋友可以试试改ntkrnlpa.exe文件,不过记得把Driver Cache和dllcache里的ntkrnlpa.exe文件删掉,然后在WINDOWS下直接替换就行了,系统文件保护会跳出来,选否就OK了.另附找到的ntkrnlpa.exe文件的说明ntkrnlpa.exe > Kernel patch 核心补丁