过期罐头电脑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 7624|回复: 0
收起左侧

Nlite精简后期处理总结(BY bluewind)

[复制链接]
rayearth 2013-5-20 09:58:48 | 显示全部楼层
用了一段时间的Nlite,同时也在网上搜集了不少的经历,在自己.做出最合适自己.或帮人装机的XP后,也不想保留后期处理技术了,留给后来的Nlite使用者,以免走弯路,研讨后期的大多都保留自己.的技术吧,偶觉得没有意义,想想吧,假如以前雨浪不发布他的经典方法,现在不晓得多少人还在走弯路。以后没有必要再研讨这个东西了,偶还要集中精神研讨平面三维和程序。

下面的文章部分引自雨浪,Tingpu,lyz0508等一些网友的发表的技术,特此感激。如有技术上的错误,或许偶也没有研讨到,请跟帖斧正。


Nlite精简后期处理总结:

Nlite使用当然不想多说了,网上教程很多,自己.挑自己.需要.的Windows组件吧。
独一想说的是:在勾选去除组件时,多看看组件说明,如移除Outlook,将会失去什么功能?

一、Nlite完成后,将I386文件夹中Win9xmig、Win9xupg、Drw目录删除掉,可以节约大量的空间。

二、实现Windows,Dos,光盘安装三种安装方式

要使你的XP能在Windows下安装,也就是调用Winnt32.exe不出错,需要.保留Compdata目录下的Drvmain.inf,和Ntcompat.inf两个文件,以及Winntupg目录下的Netmap.inf和Netupgrd.dll两个文件即可,这个方法大约是Deepin找到的,或许是某个老外的方法也不一定。当然前题是精简时不能移除DOS安装。这样你的Windows XP也可以实现Windows,Dos,光盘安装三种安装方式。另外更激进点的作法是把这三个INF里除了小节名,键值全删光的作法,又节省了一点空间。

三、进一步压缩i386目录下的部分文件,如下表:

ntprint.cat
ntprint.inf
regedit.exe
dbghelp.dll
exts.dll
imagehlp.dll
dbgeng.dll
intl.inf (这个文件竟然也可以压缩,而且都不用修改Txtsetup,真是太好了!)

提示:用Cabarc.exe(XP光盘supporttools目录下的Support.cab中)以21最大压缩可以得到最好的效果,偶觉得可以集成进自己.的XP中,由于一般大家精简时都删除了Support目录的,这个是MS的免费DD,怎能不要?有时间,偶会写个它的外壳程序,方.便大家调用。另题外话一下,一直没有发现这个工具,以前一直以为是Winrar压缩率最高,结果有时候发现CAB竟然比Winrar还凶猛,该不是MS的机密超强压缩算法吧?

给一个命令行格式吧:cabarc -m LZX:21 n %1 %2
存为cab.bat
调用示例:压缩上面表中第一个文件,当然,其它文件也可以如此压缩
cab ntprint.ca_ x:winxpi386ntprint.cat x:为你光盘的位置


下面两个文件用Upx进行压缩

winnt32u.dll
winntbbu.dll

不要忘了把未压缩的文件删除掉,又节约了好多的空间呀!^_^

四、处理输入法(以保留了全拼,智能ABC为例)前题是在Nlite移除框中删除了输入法相关文件。

打开Hivesys.inf,查找Addreg,直到定位到最后一个,用分号注释掉或是删掉如下行:
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0020804","Layout File",0x00000000,"kbdus.dll"
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0020804","Layout Text",0x00000000,"%KLT_74%"
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0020804","IME File",0x00000000,"winsp.ime"

;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0030804","Layout File",0x00000000,"kbdus.dll"
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0030804","Layout Text",0x00000000,"%KLT_75%"
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0030804","IME File",0x00000000,"winzm.ime"

;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE00E0804","Layout File",0x00000000,"kbdus.dll"
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE00E0804","Layout Text",0x00000000,"%KLT_91%"
;HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE00E0804","IME File",0x00000000,"pintlgnt.ime"

规律为每三行代表一个输入法,第一个三行是双拼,第二个三行是郑码,第三个三行是微软拼音,也就是在原输入法设置中点添加时看到的,注释掉后这里就不会出 现了,现在只剩下内码和全拼

打开Hivedef.inf,查找Preload,这里将会看到几个,从字面上可以这么了解,就是预加载相应的输入法,也就是左点输入法看到的可以切换的输入法,这里我们将全拼设为不加载,将其置入添加输入法选项。用分号注释除下面两行外的Preload
HKCU,"Keyboard LayoutPreload","1",0x00000002,"00000804"(美国中文键盘)
HKCU,"Keyboard LayoutPreload","2",0x00000002,"E0040804"(智能ABC)

同时更改加载顺序为上面所示,HKCU,"Keyboard LayoutPreload","1"《————这个就是加载顺序
顺便注释掉Intl.inf里的Simsun.ttc,,,,,65535这行,我发现不注释这里,在家里安装正常,在单位的机器里会出 现字体缺失现象。

五、处理声音
前提是Nlite移除开机声,但保留xperror.wav、xphdrem.wav、xphdinst.wav、xpstartu.wav、xpshutdn.wav五个常用声音

打开Hivedef.inf,定位到文件未尾,添加如下行:

WINDOWS_XP_STARTUP="Windows XP 启动.wav"
WINDOWS_XP_SHUTDOWN="Windows XP 关机.wav"
WINDOWS_XP_HARDWARE_INSERT="Windows XP 硬件插入.wav"
WINDOWS_XP_HARDWARE_REMOVE="Windows XP 硬件删除.wav"
WINDOWS_XP_ERROR="Windows XP 错误.wav"

定位到文件开头有HKCU,"AppEventsSchemesApps",,0x00000012这里的,将下面的行掩盖到相对应的声音默.认项,由于Nlite过后后面的值全为空,所以进XP没声音了。

HKCU,"AppEventsSchemesApps.DefaultDeviceConnect.Current","",0x00020000,"%SystemRoot%media%WINDOWS_XP_HARDWARE_INSERT%"
HKCU,"AppEventsSchemesApps.DefaultDeviceConnect.Default","",0x00020000,"%SystemRoot%media%WINDOWS_XP_HARDWARE_INSERT%"

HKCU,"AppEventsSchemesApps.DefaultDeviceDisconnect.Current","",0x00020000,"%SystemRoot%media%WINDOWS_XP_HARDWARE_REMOVE%"
HKCU,"AppEventsSchemesApps.DefaultDeviceDisconnect.Default","",0x00020000,"%SystemRoot%media%WINDOWS_XP_HARDWARE_REMOVE%"

HKCU,"AppEventsSchemesApps.DefaultSystemAsterisk.Current","",0x00020000,"%SystemRoot%media%WINDOWS_XP_ERROR%"
HKCU,"AppEventsSchemesApps.DefaultSystemAsterisk.Default","",0x00020000,"%SystemRoot%media%WINDOWS_XP_ERROR%"

HKCU,"AppEventsSchemesApps.DefaultSystemExit.Current","",0x00020000,"%SystemRoot%media%WINDOWS_XP_SHUTDOWN%"
HKCU,"AppEventsSchemesApps.DefaultSystemExit.Default","",0x00020000,"%SystemRoot%media%WINDOWS_XP_SHUTDOWN%"

HKCU,"AppEventsSchemesApps.DefaultSystemStart.Current","",0x00020000,"%SystemRoot%media%WINDOWS_XP_STARTUP%"
HKCU,"AppEventsSchemesApps.DefaultSystemStart.Default","",0x00020000,"%SystemRoot%media%WINDOWS_XP_STARTUP%"

聪明的你一定会留意到上面的DeviceConnect,DeviceDisconnect,SystemExit等关键字样,没错,中文意义就是硬件连接,断开,系统退出,系统启动等意义。

六、处理搜索助手(援用雨浪的)

一般人是直接在Nlite中移除搜索助手这个组件,但是我不推荐这样做,由于移除掉搜索助手后,在安装完成的系统中搜索的高级选项是不能保存的,需要.你每次手动打开高级选项,否则搜索不到你要找的文件。这个问题以前很多朋友给我提过,经过屡次测试之后,总 算找到一个算是完美的解决方法。保留搜索助手,只需删msgr3en.dll、nls302en.lex、courtney.acs、earl.acs、rover.acs这五个文件即可。这五个文件占用近5M空间,而整个搜索助手不过占用近6M空间而已 。 这个工作可以交给Nlite来做,也可以后期手动来删除,并修改DOSNET.INF和TXTSETUP.SIF。这里推荐由Nlite来做,由于可以减少手工修改DOSNET.INF和TXTSETUP.SIF的工作。只需要.在Nlite的删除额外文件 框中分行输入这几个文件名。
删除这五个文件后,在安装过程中(安装组件时)会提示短少文件,我们还需要.修"srchasst.in_"文件来避免这个问题。解压srchasst.in_,得到srchasst.inf,分别删"msgr3en.dll,,,32"、"nls30 2en.lex,,,32"、"courtney.acs,,,32"、"earl.acs,,,32"、"rover.acs,,,32"这几行,或者用封号屏蔽它们。保存后再压缩回去,交换原文件即可。

偶再加两句吧,一般我是不会移去代理助手这个的,也就是那个叫Meilin.acs的文件,由于在进行Agent编程练习时要用到这个文件。上面所说的三个Acs文件去掉后,梅林先生会出 现在你的搜索中,假如你去了它后,系统里点启动动画助手后,就回不到上个菜单了。可以保留这个文件,再用Office XP中有个很小的Acs文件对它进行交换,只有900多KB的,快乐了你还可以用瑞星的,金山的助手来交换。

七、处理桌面Luna主题,更改Administartor用户名,增强安.全(援用Tingpu的)

早在二月时,研讨集成Rolaye主题时发现的,也就是这里Bida后来发的一篇关于Luna主题修改的帖子的方法。雨浪在说明这个问题时好象是写漏了一点,在下面第八点所说的小节中,有Wallpaper.MUI=@themeui.dll,-2036这么一行字得注释掉,你才看得到兰天白云。当时我集成Rolaye主题是可以正确显示,Luna主题却不能,于是比照了一下两个主题的文件,发现Rolaye没有这行,于是注释掉Luna里的后,实验正常显示。

为了不让他人找到我们系统里的Administartor账号,进行Hacker行为,有必要修改这个系统默.认账号,同理,Guest也可以改名的,参见Tingpu的原文,解压Defltwk.in_,打开Defltwk.inf
找到[System Access]小节,添加
NewAdministratorName = "Jasmine",这里Jamsine就是你第一次登录XP的管理员账号。
NewGuestName = "XXXX" 添加后可以更改Guest账号
改完后压缩,交换原文件。

八、手动添加Rolay主题并指定加载Rolay主题

偶下载得到的Rolay文件或许不全吧,有四个文件,这里当个示例。
首先将四个文件中带长文件名的改成8.3Dos标准的文件并压缩了放I386目录里,否则Dos安装时会不认的。
Royale.msstyles改成royale.mst
shellstyle.dll改成royaless.dll
Royale.theme改成Royale.the
再将Royale.bmp用Acdsee改成JPG格式的Royale.jpg,谁叫Jpg的省空间呢?嘿嘿

打开Royale.the,定位到[Control PanelDesktop]小节,把Wallpaper=%WinDir%ResourcesThemesRoyaleroyale.bmp改成对应的JPG
当然,这里你还可以改成自己.喜欢的桌面。

打开TXTSETUP.sif,用十五的方法,跳到自己.的标示后面,添加如下行

royale.jpg = 1,,,,,,,306,0,0
royale.mst = 1,,,,,,,306,0,0,Royale.msstyles
royaless.dll = 1,,,,,,,307,0,0,shellstyle.dll
royale.the = 1,,,,,,,129,0,0,Royale.theme

然后定位到开头的[WinntDirectories]小节,在最后添加如下两行

306 = ResourcesThemesRoyale
307 = ResourcesThemesRoyaleShellNormalColor

然后打开Winnt.sif添加如下小节和键值以加载Rolay主题,改成luna.theme想必你也晓得什么意义了吧?随意切换吧。
[Shell]
CustomDefaultThemeFile = "%WinDir%ResourcesThemesRoyale.theme"

哪天你不想集成这个主题了,把上面的修改一去掉,删除相应的文件就成了,免去了用集成包集成容易,去掉难的问题。
当然,你愿意用集成包偶也没有任何意见,青菜罗卜各有所爱嘛。

九、手动添加自己.的驱动
暂时没有找到指定光驱路径的方法。不过偶想可以通过编程,读取HKLMSoftwareMicrosoftWindows Nt键值Sourcepath得到原安装路径,
再通过Advanceinf install过程调用安装驱动或许是个完美的解决方法,XP的安装程序不用说,它当然是晓得你从哪里安装XP的。
为什么不用Nlite集成?主要考虑以后驱动的升级,为了驱动升级,我们还得安装installer 3,.net 2,Nlite,拷贝XP原盘,运行Nlite重新
集成新驱动。。。这样的步子,时间慢长,还得保存当时的Lite配置。晕~

当自己.Diy的时候,总是希望集成自己.主板的,显卡的,声卡的驱动,以免安装时四处翻驱动盘,偶可不希望用他人集成了自己.用不上的驱动的光盘,偶还想留点空间集成自己.喜欢的软件呢,假如你有这样的想法话,OK,跟我来,手动集成自己.的驱动,不过需要.你有一点读懂Inf的基本知识,这点都做不到的话,我想你还是用Nlite集成算了。

以偶的Intel 945主板和Ati X550显卡为例,首先剖析,打开Intel的主板驱动说明,看了一下,E文的,哦,原来如此,既带了95,98的驱动,又有2000,XP的驱动,不只如此,还有其它Intel芯片的驱动,呵呵,既如此,我们安装的是XP呀,干嘛还要95,98的驱动?Ati X500的经过
剖析后也是如此,看来现在的驱动程序基本都是做成一体化了,不象以前的Nvidia的还要分2000的,XP的,现在不管你哪个操作系统,都可以安装的。好,思路清楚了,驱动也要精简!问题是如何获得这些驱动?方法当然是有的,用驱动精灵,优化大师,可提取出来的驱动好象都是什么Oem02.inf之类的,某些软件还提取不到CAT文件,我可不想我的驱动安装后显示没有经过WHQL硬件测试的。重复实验后,我发现在安装主板驱动时,系统中的暂时文件夹中有解开的驱动文件,再剖析已安装好的驱动,我找到了如下10个文件和我的主板驱动相关,压缩后共才31KB,原文件是788KB,呵呵~~
945.cat
945.inf
dmi_pci.cat Dmi_pci相关的
dmi_pci.inf
ich7core.cat ICH7南桥相关的
ich7core.inf
ich7ide.cat ICH7南桥IDE相关的
ich7ide.inf
ich7usb.cat ICH7南桥USB相关
ich7usb.inf

Ati X550的驱动解开到是好,安装程序会帮你解开驱动的,目录下那个CX_30152.inf就是对应的XP的驱动,另一个是2000的。打开剖析,呵呵,看了半天,前面部分基本没有什么,好容易剖析到最后几个小段了,一眼看到[SourceDisksFiles]小节,呵呵,正是自己.想要的呀,找到了!
[SourceDisksFiles]
ati2cqag.dll=1
ati2dvag.dll=1
ati2edxx.dll=1
ati2erec.dll=1
ati2evxx.dll=1
ati2evxx.exe=1
ati2mdxx.exe=1
ati2mtag.sys=1
ati3duag.dll=1
atiddc.dll=1
atidemgr.dll=1
atifglpf.xml=1
atiicdxx.dat=1
atiiiexx.dll=1
atikvmag.dll=1
atioglx1.dll=1
atioglxx.dll=1
atipdlxx.dll=1
atitvo32.dll=1
ativcaxx.cpa=1
ativcaxx.vp=1
ativckxx.vp=1
ativcoxx.dll=1
ativvaxx.dll=1
ativvpxx.vp=1
oemdspif.dll=1

一共是26个文件,将相应的文件拷到另一个目录下,再将CX_30152.inf,CX_30152.Cat一同拷过来,压缩,呵呵,得到了7.01MB的驱动文件,
而原驱动文件是11.7MB大,哈~真是爽呀。。

在Lang目录下树立Intel和Ati两个目录,分别把各自的文件拷到这两个目录下。
同理,打开Txtsetup.sif,在[SourceDisksNames.x86]小节后添加两个源路径
20 = %cdname%,%cdtagfilei%,,i386langati
21 = %cdname%,%cdtagfilei%,,i386langintel

在[WinntDirectories]小节后面添加
308 = TempB_30397

跳到标志符后(这里屡次使用标志符,你终于明白为什么要这么做了吧?)添加

;here is my added (意义是从这里开始是偶自己.添加的)
ati2cqag.dll = 20,,,,,,,308,0,0
ati2dvag.dll = 20,,,,,,,308,0,0
ati2edxx.dll = 20,,,,,,,308,0,0
ati2erec.dll = 20,,,,,,,308,0,0
ati2evxx.dll = 20,,,,,,,308,0,0
ati2evxx.exe = 20,,,,,,,308,0,0
ati2mdxx.exe = 20,,,,,,,308,0,0
ati2mtag.sys = 20,,,,,,,308,0,0
ati3duag.dll = 20,,,,,,,308,0,0
atiddc.dll = 20,,,,,,,308,0,0
atidemgr.dll = 20,,,,,,,308,0,0
atifglpf.xml = 20,,,,,,,308,0,0
atiicdxx.dat = 20,,,,,,,308,0,0
atiiiexx.dll = 20,,,,,,,308,0,0
atikvmag.dll = 20,,,,,,,308,0,0
atioglx1.dll = 20,,,,,,,308,0,0
atioglxx.dll = 20,,,,,,,308,0,0
atipdlxx.dll = 20,,,,,,,308,0,0
atitvo32.dll = 20,,,,,,,308,0,0
ativcaxx.cpa = 20,,,,,,,308,0,0
ativcaxx.vp = 20,,,,,,,308,0,0
ativckxx.vp = 20,,,,,,,308,0,0
ativcoxx.dll = 20,,,,,,,308,0,0
ativvaxx.dll = 20,,,,,,,308,0,0
ativvpxx.vp = 20,,,,,,,308,0,0
oemdspif.dll = 20,,,,,,,308,0,0
cx_30152.inf = 20,,,,,,,45,0,0
cx_30152.cat = 20,,,,,,,45,0,0
《-----空行分开,使我以后一看也晓得上面是显卡的,下面是主板的驱动
dmi_pci.inf = 21,,,,,,,45,0,0
945.inf = 21,,,,,,,45,0,0
ich7core.inf= 21,,,,,,,45,0,0
ich7ide.inf = 21,,,,,,,45,0,0
ich7usb.inf = 21,,,,,,,45,0,0
dmi_pci.cat = 21,,,,,,,45,0,0
945.cat = 21,,,,,,,45,0,0
ich7core.cat= 21,,,,,,,45,0,0
ich7ide.cat = 21,,,,,,,45,0,0
ich7usb.cat = 21,,,,,,,45,0,0
;[drv of end]

打开Hivesft.sif,查找DevicePath。找到后改为下面的
HKLM,"SOFTWAREMicrosoftWindowsCurrentVersion","DevicePath",0x00020002,"%systemRoot%Temp;%SystemRoot%inf"

至此驱动已集成进去了,不用修改Dosnet.inf,当然,你还可以用十一的方法在进系统后进行最后的处理,删除Temp中的暂时文件。
在进行安装的过程中,你可以留意到在Gui图型安装过程的T35到T34分钟左右(就是我们看到的安装还剩多少分钟数),屏幕会闪两下,意味着什么呢?安装程序找到了我的新驱动并自动安装上去了,驱动集成成功了!安装完后,打开设备管理器看看,是不是主板和显卡驱动都上去了呢?再看驱动程序文件详细信息,显示数字签名程序,呵呵,也就是偶为什么要找CAT驱动原文件的原因。

集成驱动的第二种方法是修改Syssetup.inf,偶实验也是成功的。不过只能集成没有子目录的驱动,象Ati的那个带子目录的就没法了。
集成驱动的第三种方法应该就是将自己.的驱动集成到Drivers.cab和Sp2.cab包里,这是终级的最好方法,有兴趣的研讨一下吧。


十、手动添加桌面壁纸,用户头像,屏保,更新Flash插件
假如你不喜欢XP里自带的那些壁纸,用户头像、屏保,人家集成的壁纸,头像,屏保可能不是你最喜欢的,自己.入手来DIY吧,我的东西为什么要和他人的一样??所谓个性化的东西就是这个吧,OK,让我们来把他们交换掉,添加新的壁纸和屏保。

壁纸一般采用Jpg的格式,假如不是,最好用图像软件来转换一下,省点空间,壁纸在Winxp中放在WINDOWSWebWallpaper目录下的,照例,查看Txtsetup.sif中[WinntDirectories]中的定义,第一行的1981 = WebWallpaper这个就是我们想要的,只需依照添加文件的方法添加如xpdsk001.jpg = 1,,,,,,,1981,0,0的格式就成了,放I386中时不要忘了在Dosnet.inf中添加d1,xpdsk001.jpg一行,同时为了方.便文件名也使用8.3格式的,照例用二的方法进行压缩,假如是放在Lang目录中,就不用修改Dosnet.inf了。屏保是放在System32中的,集成方法一样,不重复了。

用户头像是放在Documents and SettingsAll UsersApplication DataMicrosoftUser Account PicturesDefault Pictures中的,
一般可以采用交换法,头像是48*48的24位BMP格式的真彩图像,一共是23张,大家可以找找QQ的图像,也可以找点美观的图像,缩放成这种格式的。为了方.便,偶做好了23张头像,放在一个目录中,同时编了个批处理如下:
copy face01.bm_ c:winxp_voli386airplane.bm_
copy face02.bm_ c:winxp_voli386astro.bm_
copy face03.bm_ c:winxp_voli386soccer.bm_
copy face04.bm_ c:winxp_voli386butterfl.bm_
copy face05.bm_ c:winxp_voli386cat.bm_
copy face06.bm_ c:winxp_voli386fish.bm_
copy face07.bm_ c:winxp_voli386pnkflowr.bm_
copy face08.bm_ c:winxp_voli386guitar.bm_
copy face09.bm_ c:winxp_voli386snwflake.bm_
copy face10.bm_ c:winxp_voli386beach.bm_
copy face11.bm_ c:winxp_voli386car.bm_
copy face12.bm_ c:winxp_voli386chess.bm_
copy face13.bm_ c:winxp_voli386dirtbike.bm_
copy face14.bm_ c:winxp_voli386dog.bm_
copy face15.bm_ c:winxp_voli386drip.bm_
copy face16.bm_ c:winxp_voli386duck.bm_
copy face17.bm_ c:winxp_voli386frog.bm_
copy face18.bm_ c:winxp_voli386horses.bm_
copy face19.bm_ c:winxp_voli386kick.bm_
copy face20.bm_ c:winxp_voli386liftoff.bm_
copy face21.bm_ c:winxp_voli386palmtree.bm_
copy face22.bm_ c:winxp_voli386redflowr.bm_
copy face23.bm_ c:winxp_voli386skater.bm_

这种方法不用费多少精神,而且也不用修改Txtsetup.sif,大约好象听说有些作品光盘就是采用的这种方法。

第二种方法就是修改SHL_IMG.inf,不过同时也要修改Txtsetup.sif,有点复杂,不过可以控制拷贝多少个头像。
[SHGINA.CopyFiles]
"%XP_FACE01%",face01.bmp
"%XP_FACE02%",face02.bmp
"%XP_FACE03%",face03.bmp
"%XP_FACE04%",face04.bmp
"%XP_FACE05%",face05.bmp
"%XP_FACE06%",face06.bmp
"%XP_FACE07%",face07.bmp
"%XP_FACE08%",face08.bmp
"%XP_FACE09%",face09.bmp
"%XP_FACE10%",face10.bmp
"%XP_FACE11%",face11.bmp
"%XP_FACE12%",face12.bmp
"%XP_FACE13%",face13.bmp
"%XP_FACE14%",face14.bmp
"%XP_FACE15%",face15.bmp


[Strings]
XP_FACE01 = "face001.bmp"
XP_FACE02 = "face002.bmp"
XP_FACE03 = "face003.bmp"
XP_FACE04 = "face004.bmp"
XP_FACE05 = "face005.bmp"
XP_FACE06 = "face006.bmp"
XP_FACE07 = "face007.bmp"
XP_FACE08 = "face008.bmp"
XP_FACE09 = "face009.bmp"
XP_FACE10 = "face010.bmp"
XP_FACE11 = "face011.bmp"
XP_FACE12 = "face012.bmp"
XP_FACE13 = "face013.bmp"
XP_FACE14 = "face014.bmp"
XP_FACE15 = "face015.bmp"

而且千万不要输错了,否则可能惹起安装出错。

更新Flash插件方法相似,采用交换法,系统自带的是6.X的,现在都9.X版本了,快乐了还可以修改一下swFlash.inf这个文件,不修改也没有什么,反正这个插件随着Flash软件的更新,年年都在更新的。


十一、自动以比较专业的型式安装Winrar,极点五笔,Windows media play 10的方法

注意到V5版开始后Deepin的光盘在安装XP后第一次进系统时左上角有个安装进程处理框的提示么?呵呵,怎样实现的呢?有心人可以自己.剖析一下Deepin的光盘,这里就不多说了。以前在更新IE的时候也看见过种对话框的,有意义。后来无意中又看到lyz0508网友发表的一篇关于无人值守更深.入的文章,来龙去脉也就更清楚了,他也是在MS网站上看到关于RunOnceEx键值的说明文章才晓得的。

让我们来看看下面一段批处理的代码Install.cmd

@echo off
IF EXIST D:WIN51IP set CDROM=D:
IF EXIST E:WIN51IP set CDROM=E:
IF EXIST F:WIN51IP set CDROM=F:
IF EXIST G:WIN51IP set CDROM=G:
IF EXIST H:WIN51IP set CDROM=H:
IF EXIST I:WIN51IP set CDROM=I:
IF EXIST J:WIN51IP set CDROM=J:
IF EXIST K:WIN51IP set CDROM=K:
IF EXIST L:WIN51IP set CDROM=L:
IF EXIST M:WIN51IP set CDROM=M:
IF EXIST N:WIN51IP set CDROM=N:
IF EXIST O:WIN51IP set CDROM=O:
IF EXIST P:WIN51IP set CDROM=P:
IF EXIST Q:WIN51IP set CDROM=Q:
IF EXIST R:WIN51IP set CDROM=R:
IF EXIST S:WIN51IP set CDROM=S:
IF EXIST T:WIN51IP set CDROM=T:
IF EXIST U:WIN51IP set CDROM=U:
IF EXIST V:WIN51IP set CDROM=V:
IF EXIST W:WIN51IP set CDROM=W:
IF EXIST X:WIN51IP set CDROM=X:
IF EXIST Y:WIN51IP set CDROM=Y:
IF EXIST Z:WIN51IP set CDROM=Z:


SET KEY=HKLMSoftwareMicrosoftWindowsCurrentVersionRunOnceEx
REG ADD %KEY% /V TITLE /D "安装常用软件和系统更新" /f
REG ADD %KEY% /V Flags /T REG_DWORD /D 20 /f

REG ADD %KEY%10 /VE /D "安装 极点五笔 V5.1" /f
REG ADD %KEY%10 /V 1 /D "%CDROM%Softfreewb51.EXE /S" /f

REG ADD %KEY%20 /VE /D "安装 微软媒体播放器 V10.0" /f
REG ADD %KEY%20 /V 1 /D "%CDROM%Softwmp10.EXE /Q:A /R:N" /f

REG ADD %KEY%30 /VE /D "安装 WinRAR V3.61" /f
REG ADD %KEY%30 /V 1 /D "%CDROM%Softwinrar361.EXE /S" /f

保存为Install.cmd,放张XP的光盘在虚拟光驱中,然后在Winxp中运行一下这个文件,放心,不是什么病毒,懂点批处理的相信都看得懂什么意义。
运行后,打开注册表,定位到HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnceEx,看看有什么新加的么?
OK,看清楚后,让我们重新启动系统,再进系统时,这时会有点慢,请耐烦等一下,肯定会进系统的,由于你的光盘里还没有添加这三个文件呢,所以系统会查找一下,进去后你看到了什么?呵呵,本节标题的意义你了解了吧?自由发挥吧。

另说一下,这段Install.cmd的方法,只能用于光盘上安装时不通过拷贝而直接安装运行光盘上的软件,假如XP是拷到硬盘某目录下进行Dos安装时,是无法找到你的XP光盘软件的,由于这种通过探测XP光盘下有没有Win51ip这个文件来肯定光盘所在地的方法是无法探测到硬盘某目录下的Winxp的,同时假如在T12分钟加载这个批处理的时候,屏幕会有一个黑屏闪过,不过不失为一种光盘安装解决的好方法吧,假如你不喜欢第九所说的驱动集成复杂方式,用这种方法还可以偷懒集成安装驱动程序。

假如是采用直接修改Hivesft.inf的方法添加键值的方法进行文件定位,又得采用Oem目录方式,虽然可以解决文件定位的问题,却又增加了拷贝时间和Oem目录,这个当然不是偶喜欢的,偶的光盘没有Oem。对于这个问题,偶想了许久,或许编程才是独一完美的方法,通过编程,读取XP源盘安装路径,然后用上面的方法添加启动键值,这样无轮你是从哪里安装的Winxp,都可以找到光盘上的软件。

十二、手动添加小工具,并在开始菜单中添加属于自己.的专用菜单栏

绿色小软件一直是偶的最爱,小巧,适用,同样的功能干嘛非得要大型软件上不可?添加方法当然如前面所示的,为了能方.便的在命令行里调用,偶觉得还是放System32目录下吧,当然搜集这些绿软可不是简单的事,还得费点心机的,下载了还要杀毒,测试,非绿色软件还要自己.绿化,非汉化软件也还是得汉化一下,今天我们以Diskinfo磁盘空间占用率显示软件为例,这个在深山红叶的PE中也有集成的,绿色的单文件,首先杀毒测试后,将Diskinfo.exe进行压缩,同理,假如你不是放在Lang目录下的话,还得在Dosnet.inf中添加d1,Diskinfo.exe这行,我在Lang目录下树立了一个Tools文件夹,拷贝方才压缩好的文件进去,打开Txtsetup.sif文件,在[SourceDisksNames.x86]小节后面添加
23 = %cdname%,%cdtagfilei%,,i386langtools
然后跳到自己.的标示符后面,添加下面一行
diskinfo.exe=23,,,,,,,2,0,0 意义就是让安装程序晓得从LangTools目录下(23)拷到System32(2)目录下,好,一切准备就绪。

不过你可不想老在Run中输入命令行才能启动这个程序吧?OK,让我们把它添加到开始程序菜单中去吧。
接下来,我们解压缩Syssetup.in_,打开这个Syssetup.inf文件,定位到[StartMenuItems]小节,在未尾处添加如下行

system_utility =%system_utility%,0

再上面添加后紧跟着树立一个[system_utility]小节,添加

%DiskInfo_ID% =diskinfo.exe,diskinfo.exe,,1,%DiskInfo_ID_infotip%

再定位到文件未尾,添加如下行
;add tools -》定位符
system_utility = "系统适用工具"

DiskInfo_ID = "磁盘信息剖析器"
DiskInfo_ID_infotip = "显示您计算机磁盘文件夹中文件占用状况-DiskInfo"

顺便定位到[StartMenuCommon]小节,把下面两行注释掉,开始菜单里就不会出 现windows catalog和设定程序访问和默.认值两项了
;%windowscatalog% = ,"http://go.microsoft.com/fwlink/?LinkId=374",moricons.dll,107,"@%SystemRoot%system32shell32.dll,-22587","%SystemRoot%system32shell32.dll",22075
;%configureprograms% = appwiz.cpl,"control.exe appwiz.cpl,,3",moricons.dll,-114,"@%SystemRoot%system32xpsp1res.dll,-10078","%SystemRoot%system32xpsp1res.dll",10077

压缩回去交换原文件后,安装看看,是不是出 现了象附件一样的菜单项,鼠标放上面还显示Tip信息呢,就跟系统内部集成程序一样,好玩不?
其它如集成音频视频解码器集成也可以用这个方法,不过有些插件需要.注册一下,相信你搞得定这个的。

下面是偶添加的近二十个小软列表,总体积不到5.1MB,仅做参考,或许太多了,不过都是偶常用的一些小工具。

TweakUI_ID = "微软系统设置工具"
TweakUI_ID_infotip = "微软自家的TweakUI 2.10"
icesword_ID = "冰刃反黑工具"
icesword_ID_infotip = "斩断木马黑客程序的利剑-IceSword 1.10"
regshot_ID = "注册表快照工具"
regshot_ID_infotip = "方.便的找出两个不同时辰注册表的变化值-RegShot 1.7"
FileMon_ID = "文件读写监视器"
FileMon_ID_infotip = "监视系统中各应用程序的读写状况-FileMon 7.02"
DiskInfo_ID = "磁盘信息剖析器"
DiskInfo_ID_infotip = "显示您计算机磁盘文件夹中文件占用状况-DiskInfo"
Vs_ID = "系统服务查看器"
Vs_ID_infotip = "显示或修改您计算机的服务程序-ViewService 1.2"
Usboot_ID = "闪存启动盘制作器"
Usboot_ID_infotip = "启动盘制作器Usboot 1.68版"
KenPlay_ID = "Ken超小迷你播放器"
KenPlay_ID_infotip = "VC++做的仅30KB的播放器,可播放多种音频、视频格式(本系统可播放Real电影)-KenPlayer"
hijackth_ID = "IE浏览器反劫持工具"
hijackth_ID_infotip = "系统出了问题,就扫描一个结果放坛子里吧-HijackThis 1.99"
upiea_ID = "IE插件超级管理器"
upiea_ID_infotip = "可以方.便的免疫、卸载歹意网站强加的插件-Upiea 2005"
ones_ID = "刻录软件Ones 2.0版"
ones_ID_infotip = "超小的刻录软件,是时候放弃Nero了-Ones 2.0.325"
winimage_ID = "软盘镜象制作工具"
winimage_ID_infotip = "已支持虚拟机VHD格式-Winimage 8.0"
aspack_ID = "可执行文件压缩器"
aspack_ID_infotip = "程序员必备的DD,可压缩EXE、DLL文件-Aspack 2.12 "
ultraiso_ID = "光碟镜象制作工具"
ultraiso_ID_infotip = "软碟通,ISO光碟伴侣-UltraISO 7.66"
ultras_ID = "屏幕捕获工具"
ultras_ID_infotip = "仅几百KB小巧的屏幕捕获工具,支持Jpg,Bmp,Png,Gif格式-UltraSnap Pro 1.4"
screen_ID = "屏幕录像机"
screen_ID_infotip = "小巧好用的屏幕录像工具,生成AVI格式,支持系统视频编码,生成的文件更小-Screen Record Studio"
hashcalc_ID = "超强文件指纹校验机"
hashcalc_ID_infotip = "可以计算MD5、CRC32等文件校验值的工具-HashCalc"
reshacke_ID = "可执行文件资源修改器"
reshacke_ID_infotip = "老牌好用的文件资源修改器-Resource Hacker"
peid_ID = "Win32程序外壳扫描器"
peid_ID_infotip = "可以探测EXE、DLL加的壳的类型-PEid 0.93"
imetool_ID = "输入法设置工具"
imetool_ID_infotip = "由Silence编写的输入法设置工具,可以安装IME,自由设置热键-ImeTool 2.6"
handy_ID = "删除文件恢复器"
handy_ID_infotip = "可以恢复已被删除的文件-HandyRecovery 1.0"


十三、移除Biosoem.*相关文件后,在Everst测试软件里不显示需要.激活的方法。
这个是一个网友透露的,没有征得他的同意之前,这里还是空着吧。


十四、移除Nlite强加给我们的(或许有点不厚道,权当是让你理解Nlite给你文件中添加了什么吧)

假如你厌恶在安装XP后第一次进桌面时出 现的那个黑色的Cmd框和添加在系统中的引藏项,跟我来,手动移除这些DD。
打开Hivesft.inf,查找HKLM,"SOFTWAREMicrosoftWindowsCurrentVersionRunOnce","nlreg",0x00020000,"rundll32 advpack.dll,LaunchINFSection %SystemRoot%infnlite.inf,T"
然后注释掉。

打开txtsetup.sif,找到nlhive.inf = 16和nlite.inf = 16两行,注释掉
找到AddReg = nlhive.inf,nLite,注释掉
找到nlhive.inf = 1,,,,,,_x,,3,3和nlite.inf = 1,,,,,,,20,0,0,注释掉

打开Dosnet.net,找到d1,nlhive.inf和d1,nlite.inf两行,注释掉
解压sysoc.in_,打开sysoc.inf,找到nLite=ocgen.dll,OcEntry,nLite.inf,HIDE,7和nLiteRF=ocgen.dll,OcEntry,nLite.inf,HIDE,7
注释掉。

同时可以将Nlite.inf和Nlhive.inf里想要的内容移到自己.的注册表优化文件,然后就可以随手将这两个文件Del了。哗,世界喧嚣了。假如你还有洁僻,还可以把每个Nlite修改正的文件未尾的Nlite标志语删了,应该说删这些还可以节省一些空间吧,这下整个系统里没有Nlite影子了,完好的原XP,(当然除了Nlite破解的几个Dll)呵呵,够BT的吧?

十五、手动添加字体,并注册这些新添加的字体

当我们需要.集成字体时,(美工有时需要.)有网友也试着修改TXTSETUP.sif文件,在系统里添加了字体,但安装完成后,打开写字板什么的,里面没有显示出安装的新字体,查看字体文件,也在Font目录下呀,其实打开控制面板中的字体后,系统会自动扫描字体,你的新字体在这个时候将被注册,再打开写字板时,哎呀,出来了,呵呵。能不能自动注册呀?问得好,好象也看见有人在问这个问题。答案就是注册表里,以集成华文仿宋体为例:这里提供一个小技巧,修改TXTSETUP.sif时,不用把自己.的文件夹在原有的文件中。最好是在未尾添加一个自己.的标示符,如我自己.添加时加了这么一句->;here is my added,以后要修改这里,只需在查找中输入;here,就可以直接跳到这里来了。
将字体stfangso.ttf压缩一下,放在i386lang这里,为什么放这里?一个是好查找,二个是不用修改Dosnet.inf了,由于Lang目录在安装是会被系统自动拷到暂时目录中的,不信,你再在Lang目录下建个空目录,在第一次安装需要.重启时,不启动系统,跑暂时文件夹中去看看,是不是同样有个相同的空目录?

接着:打开TXTSETUP.sif,用上面的方法跳到自己.的标示符这里,添加stfangso.ttf=7,,,,,,,22,0,0这行字,7是指lang目录,22是指系统Fonts
目录,再打开Hivesft.inf,定位到HKLM,"SOFTWAREMicrosoftWindows NTCurrentVersionFonts",,0x00000012这里,在后面随意那行后面
添加HKLM,"SoftwareMicrosoftWindows NTCurrentVersionFonts","%hwzs%",,"stzhongs.ttf"一行,再翻到未位的[strings]小节里,
添加一行hwfs="华文仿宋",聪明的你一下看出门道了吧?嘿嘿,这样处理后,安装上Xp,打开写字板,看看字体是不是在那里呢?看到这里,你是不是想集成微软的雅黑字体呢?(好象有点大)什么是雅黑字体?晕,自己.在网上搜一下相关的信息吧,再自己.集成试试。

另外,还传播着一种用高手改造过的Simsun.ttc交换XP的宋体字体的方法,还可以节省一些空间,听说是来自雨浪的系统维护工具盘,压缩后只有1.2MB大,比原来的小很多,具领会不会出 现Tingpu说的显示某些如8号,12号的字会模糊的现象,没试过,有兴趣的可以试试。

十六、手动添加王码五笔86版

原本不想写这个的,由于太简单了,看到有人在问这个问题,就当是给五笔喜好者一个回复吧。
在华军网上有这个下载,也就是Office 2000光盘里自带的那个老五笔,大多学86版五笔时间长点的都还在用这个吧,由于那时还没有出极点五笔,不过偶并不喜欢用这个,极点才是偶的最爱,集成它只是应一个同事的要求。解开后共四个文件,Winwb86.mb和Winwb86.ime这两个就是86版的,文件不大,照例用上面的方法进行压缩,参照四的方法打开Hivesys.sif,在那个位置上添加

HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0100804","Layout File",0x00000000,"kbdus.dll"
HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0100804","Layout Text",0x00000000,"%KLT_92%"
HKLM,"SYSTEMCurrentControlSetControlKeyboard LayoutsE0100804","IME File",0x00000000,"winwb86.ime"

[Strings]小节中添加
KLT_92="王码五笔输入法86版"

hivedef.sif文件中preload处添加一个HKCU,"Keyboard LayoutPreload","4",0x00000002,"E0100804"
别忘了修改Txtsetup.sif和Dosnet.inf添加文件。
OK,安装看看,是不是出来了?

后记:其它象一些添加注册表、服务优化的东西我想也不用多说了,在网上可以搜到一大堆的优化键值,保存好后导入你的XP就成了。关于修改安装画面什么的ZMN120上面讨论得有点多,不重复了。高级点的就象Deepin一样自己.用Delphi什么的写个程序,用上面的方法集成到自己.的XP盘中就成了。Nlite的东西是不完美的,你不晓得系统中是否还缺失什么文件,偶的感受是,只需你不过份的精简掉XP的组件,通过上面的后期处理,一般都不会出 现什么安装字体缺失,插USB出 现安装驱动对话框,不能安装SQL什么之类的问题,都能正常安装与使用。具体系统中还有什么BUG呢?这个我不晓得,所以大多数制作人都是采用发放作品,让大家免费安装测试,通过问题的反馈或调整精简计划,或添加文件,或修改注册表等方法加以解决。当然,这也无可厚非,人多力气大嘛,所以高手仍然是高手,菜鸟还是菜鸟,研讨技术的还是在研讨技术,大自然之造化也。


偶不是什么高手,只是对技术感兴趣而已,Deepin或许做得比偶所述的还要更多,每次剖析他的碟子都发现新的东西,他对技术固执的追求精神真的值得大家好好学习。光盘制作技术中偶觉得PE和Nlite有很多的相通之处,通过制作,可以加深我们对系统内部的理解。再次总结一下Nlite研讨需要.具备的知识吧:

1.Dos基础知识,很多古老的命令现在都还在发挥着它不可替代的作用。
2.注册表知识,系统的内核。
3.INF文件构造。
4.常用工具如REGSNAP注册表监视,Resource Hacker资源修改的使用。
5.虚拟机调试工具的使用。
6.启动光盘制作知识。
7.Nlite的使用
8.后期处理
9.E文,有时间多去老外的坛子里逛逛,或许会有新的发现。

要想做得更好,平面设计和编程是必不可少的。看了这么多,或许你心里在打退堂鼓了,呵呵,别怕,知识是靠积聚才能得到的,没有努力,哪来的成功?

看完本章后,你的觉得是什么?还在羡慕他人做的XP精简版么?自己.入手打造属于自己.的Winxp吧,上MS网上转转看看,偶也是在自己.研讨中找到理解决的方法,仔细加耐烦,没准你又发现比我更好的方法呢?

注:此方法是用在精简计划已定的状况下才做的,否则每次都修改,累死你。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

一键重装系统|雨人系统下载|联系我们|网站地图|过期罐头电脑论坛

GMT+8, 2024-11-2 12:31 , Processed in 0.052613 second(s), 26 queries .

官方免责声明:本站内容来自网友和互联网.若侵犯到您的版权.请致信联系,我们将第一时间删除相关内容!

Powered by Discuz!

专注于win7_win10_win11系统下载装机

© 2010-2023 GQGTPC.Com

快速回复 返回顶部 返回列表