PE修改教程
PE修改教程
⼀、增减外置程序(注:以修改⽼⽑桃0325版为例,下同)
外置程序在⽼⽑桃WinPE光盘的“外置程序”⽬录中,对应的配置⽂件是该⽬录下的WinPE.INI.删除程序只须删除该软件在外置程序⽬录对应的⼦⽬录,再删除WinPE.INI 中相应的LINK 创建快捷⽅式的语句⾏即可。添加程序正好相反,将绿⾊软件放到外置程序⽬录中,在WinPE.INI 中加⼊相应的LINK 语句⾏创建快捷⽅式即可(参照其它LINK 语句,复制⼀⾏,只须更改⼀下快捷⽅式的位置、名称/⽬标程序的⽬录名、可执⾏⽂件名)。
实际上很多并不是为WinPE 准备的软件也是可以在WinPE 中运⾏的,⽤⼀个笨办法来判断⼀个普通的绿软是否可以直接在WinPE 中运⾏,启动WinPE 环境,到该软件所在⽬录,复制⼀份备份,然后将该⽬录和⽬录下的所有⽂件属性改为只读,直接双击⽬录内的可执⾏⽂件,看能否运⾏,运⾏后各项功能都使⽤⼀下看是否正常,如⽆异常,则可按上⾯的⽅法简单加⼊。如运⾏异常,有可能缺某些库⽂件(这种情况⼀般有提⽰),或它在⾃⼰的⽬录内写东西,或依赖注册表中的某些键值,这就需要动点⼿脚,如准备缺少的库⽂件,看它⾃⼰的⽬录下有没有配置⽂件可以修改,在XP 中运⾏监视它要读些哪些注册表项。这种情况对不同的软件解决的⽅法不同,也可能⽆法解决。
⼆、定制登录过程
映像文件怎么打开
这⼀项改动需要熟悉PECMD 各命令的⽤法,读懂配置内外配置⽂件,最好对系统登录的过程有点了解。只作为兴趣,因为⽼⽑桃的登录顺序⼏乎也没什么可改动的了,可以留给我们定制的就是改改提⽰句、外置程序的加载⽅式、调整⼀下细节⽽已。这⼀过程会涉及到内部配置⽂件:
1、将光盘映像根⽬录中的WinPE.IS_ ⽤UltraISO 或WinRAR 提取出来
2、将名称改成WinPE.CAB(不改也可以,但⽤WinRAR 打开会⿇烦点)
3、⽤WinRAR 将其中的WinPE.ISO 解压出来
4、⽤同样的⽅法,将WinPE.ISO 中的WXPE\SYSTEM32\PECMD.INI 提取出来(注:要修改什么⽂件就提取什么⽂件,后⾯的改注册表也要⽤到此⽅法)
5、按⾃⼰的需要修改提取出来的⽂件
6、将修改后的⽂件放⼊WinPE.ISO 中替换原来的(⽬录位置⼀定要相同)
7、⽤CAB 打包⼯具将WinPE.ISO 重新打包为WinPE.IS_
8、再将WinPE.IS_ 放到⽼⽑桃的光盘映像中替换原来的(注:⽤UltraISO 修改ISO 映像⽂件时最好⽤另存,以免改错了原来的备份也没有了)
三、修改外置程序⽬录名
要改动的地⽅有3 个⽂件和1 个⽬录名:
1、内部配置⽂件PECMD.INI(修改⽅法见前⾯说明)
2、\外置程序\WinPE.INI (前⾯的根指光盘映像的根⽬录)
3、\WINPE安装\SETUP.INI (⽼⽑桃的安装卸载程序要⽤它)
4、外置程序的⽬录名(这个是当然的)
将三个INI ⽂件提取出来按下⾯的步骤修改,假设新名为"NEWNAME"
1、⽤记事本打开INI ⽂件,将光标定在⽂件最前⾯
2、菜单:编辑-替换...
3、在“查内容”编辑框中输⼊"\外置程序"(不含引号)
4、在“替换为”编辑框中输⼊"\NEWNAME"(不含引号)
5、点全部替换
6、在“查内容”编辑框中输⼊"外置程序\"(不含引号)
7、在“替换为”编辑框中输⼊"NEWNAME\"(不含引号)
8、点全部替换
9、保存
⽤修改后的⽂件替换下载的光盘映像中原来的(外置程序这个⽬录的名字可以直接在UltraISO 中修改),说得这么⿇烦只是为了防⽌漏改或者将注释也给改了,实际上新版本因采⽤的%CurDir% 这个环境变量后,要改的只有⼏个地⽅,⼿⼯改也是可以的。
四、修改系统设定
这⼀步主要是指修改WinPE 的注册表,可以直接修改WinPE注册表,也可以修改配置⽂件。
1、修改内部注册表的⽅法:
⽤前⾯修改PECMD.INI 的⽅法将内部注册表的⽂件提取出来:
\WXPE\SYSTEM32\CONFIG\*.*
\WXPE\SYSTEM32\SETUPREG.HI_ (这是CAB压缩包,将它解开成SETUPREG.HIV)
运⾏注册表编辑器REGEDIT.EXE,⿏标点击HKEY_LOCAL_MACHINE,然后点“⽂件”-“加载配置单元”,打开提取出来的注册表⽂件(需要改哪个就加载哪个),提⽰挂载名时随便输⼊取⼀个名字如“WinPE”,展开HKEY_LOCAL_MACHINE 后⾥⾯就有⼀项WinPE,然后就跟普通的注册表操作⼀样了,改好后⽤⿏标点⼀下“WinPE”项⽬,然后“⽂件”-“卸载配置单元”,这个⽂件就改好了。⽤改过的注册表⽂件替换原来的。
2、修改配置⽂件的⽅法:
对于普通的不依赖于外置程序⽬录结构的注册表项⽬,可以⽤常规⽅法将修改项写成REG ⽂件(可以直接从XP 系统中导出,然后在其基础上修)。在外置程序⽬录下有个d,这个⽂件是⽑桃⽤来注册外置程序⽂档关联的(就是改注册表),可以⽤记事本打开它,加⼊⼀⾏:
REGEDIT /s REG⽂件名
则WinPE 加载外部配置时它会⾃动导⼊。
这是最简单的改注册表的⽅法。但是如果要改的项依赖于外置程序的⽬录结构(⽐如要在右键菜单中添加⽤UltraEdit32 打开),就不能⽤上⾯的⽅法了,因为外置程序的绝对路径是不确定的(不同的机器中盘符不能确定)。这种情况就需要⽤原始的REG
命令来做了(就跟⽼⽑桃在REGDOC.CMD 中的做法⼀样),这个命令的语法⽐较艰懂,且注册表键值的表⽰⽅法跟REG ⽂件不同。在命令提⽰符下通过/? 参数可以获得它的⽤法(中⽂的哦),提醒⼀下/? 参数是个以多层使⽤的,如REG /? 得到的是基本参数的说明,如⽤REG ADD /? 则可得到ADD 这个参数的⽤法……,有了这个命令的基础后,我们来看看是怎么解决不定路径问题的。在REGDOC.CMD 中有⼀个环境变量%TP%,代表的是REGDOC.CMD 这个⽂件所在的路径。我们可以通
过%TP%\..\ 表⽰它的上层⽬
录,%TP%\..\..\ 表⽰它的上两层⽬录。⽤此⽅法可以索引到外置程序⽬录内的所有路径,⽽不⽤考虑外置程序⽬录本⾝的绝对路径。还有个⽅法就是在WinPE.INI 中⽤PECMD 的REGI 命令⼀⾏⾏添加,这个⽐系统的REG 命令好理解些,同样可以⽤%CurDir% 环境变量来索引外置程序⽬录内的所有路径.直接修改的好处是启动WinPE 就是所需要设置,不依赖外部配置⽂件,WinPE 的加载速度也⽐较快,但⿇烦。修改配置⽂件则⽐较简
单,但要依赖配置⽂件加载过程(直到加载到那些语句时才会⽣效),启动时需要额外的时间加载,相当
于给系统打补丁去修改默认设置。
⼀般情况下不推荐直接修改WinPE注册表,⿇烦,重新打包也⽐较花时间。但有些跟系统紧密的键必须直接修改才有效,⽐如屏幕分辨率,虽然在外⾯也可以修改有,但在登录时加载到它之前是⽆效的,那么在登录的过程中屏幕就会因切换分辨率⽽闪烁。
⾃⼰修改注册表的前提是⾃⼰要知道所希望的改变要修注册表中的哪些键值。可以上⽹搜索,现在⽹上的这些资源多得是,实在不到的话可以还可以⽤RegMon 之类的注册表监视软件来定位。⽐如修改记事本的⾃动换⾏,⼜不知道相应的键值在哪。可以先开启RegMon,然后在记事本中改变换⾏的选项,看RegMon 的监视结果,来定位是哪个键值。因为系统本⾝也在不断的更改注册表,RegMon 中的显⽰会很多,但是通过不断的改变记事本中的设置,最终是可以到的,这个过程需要的是耐⼼和细⼼。
五、添加驱动
在外置程序⽬录中有⼀个⽐较重要的⽬录“PE_OUTERPART”,核⼼的外置组件都放在这⾥。⾥⾯有4 个CAB 压缩包,分别是⽹卡/⽆线⽹卡/声卡/显卡驱动包,⽽且加载的框架都已经搭好了,在cmd 脚本中会⾃动调⽤INFCACHEBUILD.EXE 处理驱动程序。我们要做的⼯作就是获取驱动程序⽂件,将它们放到相应的驱动包中。
从本机上获取驱动⽂件有很多驱动备份⼯具,我⽤的是最笨的⽅法,在设备管理器中查看驱动程序详细信息,然后⼀个个复制⽂件,建⼀个⽬录,放到相应的驱动包中。中间有⼀个步骤,就是改⼀下复制出来的inf⽂件的名称,让它按⽂件名排序时可以排在最前⾯(我就是在⽂件名前⾯加了个下划线)。我不知道这⼀步是否是必须的。这样提取出来的驱动⽂件可能很⼤,测试成功后再删除⼀些不必要的驱动⽂件。有很多⽂件是可以删除的,可以参考原驱动包中同类驱动的⽂件,将类似的⽂件保留,其它删除。另⼀个笨办法是⼀个个删除,每删除⼀个测试⼀次,最终到⼀个最⼩的驱动⽂件⼦集。
DIY(⼆):
⼀、WinPE⾥添加驱动
下图可以看见在VM⾥是认不出VM的显卡的
外置程序⾥的“Drviers_vga.cab” 这个cab包⾥放的就是显卡的驱动
解压出来可以看见是没vm的驱动的
从vm的windows.iso⾥到VM的显卡驱动
在刚才解压出来的Drivers_vga包的⽂件夹⾥新建⼀个⽂件夹命名为vmware(其实叫什么都随便但这样放的话以后好⾃⼰改⾄少知道是
啥)
把vm的驱动放进该⽂件夹⾥
放进去后把刚才解压的⽬录重新⽤XCAB打包切记⼀定要选中"处理inf"
好了看看打包后的cab⾥就有vm驱动了
放回vmware⾥测试已经能认出显卡了

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。