深入浅出进入PE世界.docx
- 文档编号:10041291
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:34
- 大小:28.88KB
深入浅出进入PE世界.docx
《深入浅出进入PE世界.docx》由会员分享,可在线阅读,更多相关《深入浅出进入PE世界.docx(34页珍藏版)》请在冰豆网上搜索。
深入浅出进入PE世界
前言:
本文只是以偶在研究是所看到的一个PE产生的简单过程,带领您进入这个神秘的世界,偶并不打算
教你如何生成像老毛桃先生这么小的PE光盘作品,因为其研究过程很漫长,引用老毛桃的话来说,"老九
用了一年的时间才产生得到一个近120多MB的WinPE系统,自己又花了近半年的时间对它进行精简优化,最
后才得到解压后为51MB左右的WINPE",这里不是指压缩后的21.XXMB的体积,偶认为会误导某些人,认为
Windows的内核最小是21MB,我们要以实事求是的态度来了解这个操作系统,了解它的产生过程,当然,
偶研究的时间很短,也许了解得不大全面或是有误,见谅了,PE高手请略过本文。
OK,下面开始:
一、了解什么是PE。
PE英文为WindowsPreinstallationEnvironment的缩写,意为Windows预安装环境,用MS帮助上的说明来
说,是带有有限服务的最小Win32子系统,它基于以受保护模式运行的Windows?
XPProfessional内核
。
它包括运行Windows安装程序、从网络共享安装操作系统、自动化基本过程,以及执行硬件验证所需
的最基本功能。
。
某些人可能会对这些所谓的名词感到疑惑,不妨换个思考的角度,PE是什么?
偶说,它
是一个操作系统,类似于DOS,只不过内核是NT的内核,支持NTFS文件系统,可在光盘上运行的一个操作
系统。
二、PE的历史背景。
PE最早是微软发布的一种光盘预安装系统,当时的出现让人很振奋,因为在它出现之前,DOS只能借第三
方软件的支持下才能访问NTFS格式的磁盘文件,而且还不全兼容。
不过好境不长,当人们从微软的网站上
下载这个PE系统,并使用后,因为这个微软的WinPE启动后只有一个黑框框--CMD命令行窗口,什么桌面
啊,开始菜单啊,任务条什么的全都没有,我要运行任务管理器,怎么办?
输入Taskmgr回车,这下出来
了,我要运行注册表编辑器怎么办?
输入Regedit,出来了,我要分区?
输入Diskpart,又是一大堆命令
,这下难到了一大批尝鲜者,都鼠标一统天下的时代了,但会玩命令行的只有以前的DOS高手了,所以PE
渐渐被人们所遗忘。
还好,这个时候,总会有技术强人出来继续PE的研究,沉默一段时间后,终于以Bart
(巴特)这样的技术先锋为首的人,突破性研究出为PE添加各种系统文件,为PE穿上XP的漂亮外衣的办法
,才让PE从死谷里走出来,走入我们的日常生活中。
让我们记住他--Bart和他的--Bart'sPE
Builder软件!
备注:
用Bart的原话来讲,用PeB生成的Winpe已不是MS的那个PE了,两者不同,请要不要搞混了,更不要
向MS寻求技术支持,PEB本身是免费的。
MS的有版权,
而且每用24小时会自动关闭系统,既所谓的资源限
制。
三、当今国内、国外PE研究发展的情况。
国内研究PE的前锋当属无忧论坛无疑,(有兴趣的可以去那里看看)大家熟知的深山红叶PE系统工具箱和
老九、老毛的迷你WinPE系统均出自那里,当然,从一些资深人士来说,PE在国内也向这些系统制作人一
样,分成了两派,一派为深山红叶那种无桌面派的简洁派,一派为老九、老毛那种有XP桌面的桌面派。
他
们都是成功的PE系统制作者,还有无忧上新进的一批VC++高手等,因为有了他们,才会有今天PE的实用价
值的存在。
在国外,PE研究非常热,有很多的著名坛子,当然有Bart's的坛子,还有LiveCD,911CD,以
及MSFN的坛子等,无数的老外制作了数不胜数的PE插件丰富资源,如Shell壳插件有GeoShell,Windows
Explorer(一个类拟于98菜单的壳,好像是俄罗斯人写的),XPE,Xbox等著名插件等,网络类的PPPOE拨
号插件,硬件类的USB即插即用接口插件,还有各种各样的软件类插件,大大丰富了PE的应用价值,很多
老外都在做自己的光盘Live系统,人家大多不是追求光盘有多小,而是比这个光盘用了多少外部插件,能
提供什么功能,偶看到老外做出来基本上都有300多MB之巨,当然功能更全,在上面打DX游戏的都有,人
家完全是在玩光盘Live系统。
四、无桌面派PE的制作方法。
为什么把深山红叶的那种光盘称为无桌面派,这个说法有点免强,必竞只是Shell壳的不同,只是不能在
桌面上或是任务栏上点右键而矣,偶觉得除了这点外,和有桌面的PE操作起来差不多吧。
准备好我们的工
具:
PEBuilder3.0.4或是3.1.0版软件(以后简称PEB),母盘用WinXPSP2完整版(切记不要用精简版
XP,包括D大的光盘也不行,会报错的,影响制作时查错),一些绿色的小软件,WinRAR压缩包制作软件
,同时下载偶提供的这个从国外的坛子里下载到的PE插件--GeoShellV2.0和偶修改过的PE中文插件,
当然,必要的测试装备,虚拟机也要准备好,本次提供VPC家族中最快的5.2全版下载。
另外,偶也向国
外的坛子学习,不提供PE成品盘,只提供PE插件和制作方法。
(1).将下载的PEB安装或是解压到一个目录下。
(2).将偶提供的这两个插件解压放入PEB目录下的Plugins目录中。
(3).将XP原光盘插入虚拟光驱,或是用UltraIso一类的软件提取到硬盘某目录下。
(4).编辑PEB目录下nu2menu目录中的nu2menu.xml文件,将里面的部分DD换成中文的,如下表类拟的样
子。
★MiniOSWinXPE★
◆系统附
件
◆控制面板
◆系统配置
常用工具软件
数据恢
复软件
磁盘工具软件
Ghost8.3备份/恢复
简单解释一下这个PEB中的XML格式,所有的东西都是以为开头为结尾的格式配对,我们修
改这个文件可以在Winpe中添加主菜单,子菜单,以及子菜单项和它们所对应的程序,基本格式都是固定
的。
如下面这行
◆控制面板,这行前面指出MITEM为弹出式菜单
"POPUP"类型,子联项MenuID="Controlpan"是偶自定义添加的ID值,菜单中文显示名为"◆控制面
板",最后以为结尾。
效果如图所示:
多比较一下里面相同部分和不同分部,你也会得到和偶一
样的结果,当然自己就可以随意的添加菜单项了。
这条是显示一个分
格符。
(5).编写Ghost插件为PE添加Ghost功能。
;ghost.inf
;PEBuilderv3plug-inINFfileforSymantecGhost32
;CreatedbyBartLagerweij
[Version]
Signature="$WindowsNT$"
[PEBuilder]
Name="SymantecGhost8.3"
Enable=1
[WinntDirectories]
a="Programs\ghost",2
[SourceDisksFiles]
files\ghost32.exe=a,,3
files\ghostexp.exe=a,,3
[Software.AddReg]
0x0,"Classes\.gho"
0x1,"Classes\.gho","","Ghost"
0x0,"Classes\Ghost"
0x1,"Classes\Ghost","","Ghostimagefile"
0x0,"Classes\Ghost\DefaultIcon"
0x2,"Classes\Ghost\DefaultIcon","","%SystemDrive%\Programs\ghost\ghostexp.exe,0"
0x0,"Classes\Ghost\shell"
0x0,"Classes\Ghost\shell\open"
0x0,"Classes\Ghost\shell\open\command"
0x2,"Classes\Ghost\shell\open\command","","%SystemDrive%\Programs\ghost8\ghostexp.exe"%
1""
将上面这段码复制到一个文本文件中,并改名为INF为后辍。
在PEB的Plugins目录下创建Ghost83文件夹,
然后在这个文件夹下面再建立一个Files目录,同时把你的Ghost32.exe和GhostExp.exe文件放Files目录
中,并将刚才那个INF放Ghost83目录中。
五、有桌面派PE的制作方法。
(此过程稍有点长,也是本文的重点)
六、PE的减肥方法
PE如果是用PEB或是MS本身的光盘,体积都有点大,MS的有300MB之巨,如果你想让PE的体积变得小一些,
那么就需要对它进行减肥,有些PE上面的文件并不是系统必需的东西,或是PE软件不会用到的DLL相关文
件。
偶在阅读MSPE帮助的时候看到这么一条相关说明,就是如何制作最小化的PE,MS给出了相关的说明
和可删除的文件列表,并出示了一段批处理的代码,偶觉得非常兴奋,不过有趣的是,这段代码居然有错
,根本无法执行。
偶对For循环并不在行,好在偶耐下性子,边看MS的帮助,边调试这个批处理,几改几
改的,终于把这个批处理搞得正常运作了,呵呵,成功的删除了MS给出的列表文件中的可删除文件,不过
后来测试,这个列表中的文件也不见得真正可删,有部分文件在测试中还需要用到
,如Diskcopy.dll实际
上是格式化驱动器的支持文件,需要用这个功能的最好不要删,这里提供出来仅做参考。
fonts\AHRONBD.TTF
fonts\ANDLSO.TTF
fonts\ANGSA.TTF
fonts\ANGSAB.TTF
fonts\ANGSAI.TTF
fonts\ANGSAU.TTF
fonts\ANGSAUB.TTF
fonts\ANGSAUI.TTF
fonts\ANGSAUZ.TTF
fonts\ANGSAZ.TTF
fonts\ARIAL.TTF
fonts\ARIALBD.TTF
fonts\ARIALBI.TTF
fonts\ARIALI.TTF
fonts\ARIBLK.TTF
fonts\ARTRBDO.TTF
fonts\ARTRO.TTF
fonts\BROWA.TTF
fonts\BROWAB.TTF
fonts\BROWAI.TTF
fonts\BROWAU.TTF
fonts\BROWAUB.TTF
fonts\BROWAUI.TTF
fonts\BROWAUZ.TTF
fonts\BROWAZ.TTF
fonts\CGA40850.FON
fonts\CGA40WOA.FON
fonts\CGA80850.FON
fonts\CGA80WOA.FON
fonts\COMIC.TTF
fonts\COMICBD.TTF
fonts\CORDIA.TTF
fonts\CORDIAB.TTF
fonts\CORDIAI.TTF
fonts\CORDIAU.TTF
fonts\CORDIAUB.TTF
fonts\CORDIAUI.TTF
fonts\CORDIAUZ.TTF
fonts\CORDIAZ.TTF
fonts\COUR.TTF
fonts\COURBD.TTF
fonts\COURBI.TTF
fonts\COURE.FON
fonts\COURF.FON
fonts\COURI.TTF
fonts\DAVID.TTF
fonts\DAVIDBD.TTF
fonts\DAVIDTR.TTF
fonts\DOSAPP.FON
fonts\EGA40850.FON
fonts\EGA40WOA.FON
fonts\EGA80850.FON
fonts\EGA80WOA.FON
fonts\ESTRE.TTF
fonts\FRAMD.TTF
fonts\FRAMDIT.TTF
fonts\FRANK.TTF
fonts\GAUTAMI.TTF
fonts\GEORGIA.TTF
fonts\GEORGIAB.TTF
fonts\GEORGIAI.TTF
fonts\GEORGIAZ.TTF
fonts\IMPACT.TTF
fonts\KARTIKA.TTF
fonts\L_10646.TTF
fonts\LATHA.TTF
fonts\LSANS.TTF
fonts\LSANSD.TTF
fonts\LSANSDI.TTF
fonts\LSANSI.TTF
fonts\LUCON.TTF
fonts\LVNM.TTF
fonts\LVNMBD.TTF
fonts\MANGAL.TTF
fonts\MODERN.FON
fonts\MRIAM.TTF
fonts\MRIAMC.TTF
fonts\MRIAMFX.TTF
fonts\MRIAMTR.TTF
fonts\MVBOLI.TTF
fonts\NRKIS.TTF
fonts\PALA.TTF
fonts\PALAB.TTF
fonts\PALABI.TTF
fonts\PALAI.TTF
fonts\RAAVI.TTF
fonts\ROD.TTF
fonts\RODTR.TTF
fonts\ROMAN.FON
fonts\SCRIPT.FON
fonts\SERIFE.FON
fonts\SERIFF.FON
fonts\SHRUTI.TTF
fonts\SIMPBDO.TTF
fonts\SIMPFXO.TTF
fonts\SIMPO.TTF
fonts\SMALLE.FON
fonts\SSERIFF.FON
fonts\SYLFAEN.TTF
fonts\SYMBOL.TTF
fonts\TAHOMABD.TTF
fonts\TIMES.TTF
fonts\TIMESBD.TTF
fonts\TIMESBI.TTF
fonts\TIMESI.TTF
fonts\TRADBDO.TTF
fonts\TRADO.TTF
fonts\TREBUC.TTF
fonts\TREBUCBD.TTF
fonts\TREBUCBI.TTF
fonts\TREBUCIT.TTF
fonts\TUNGA.TTF
fonts\UPCDB.TTF
fonts\UPCDBI.TTF
fonts\UPCDI.TTF
fonts\UPCDL.TTF
fonts\UPCEB.TTF
fonts\UPCEBI.TTF
fonts\UPCEI.TTF
fonts\UPCEL.TTF
fonts\UPCFB.TTF
fonts\UPCFBI.TTF
fonts\UPCFI.TTF
fonts\UPCFL.TTF
fonts\UPCIB.TTF
fonts\UPCIBI.TTF
fonts\UPCII.TTF
fonts\UPCIL.TTF
fonts\UPCJB.TTF
fonts\UPCJBI.TTF
fonts\UPCJI.TTF
fonts\UPCJL.TTF
fonts\UPCKB.TTF
fonts\UPCKBI.TTF
fonts\UPCKI.TTF
fonts\UPCKL.TTF
fonts\UPCLB.TTF
fonts\UPCLBI.TTF
fonts\UPCLI.TTF
fonts\UPCLL.TTF
fonts\VERDANA.TTF
fonts\VERDANAB.TTF
fonts\VERDANAI.TTF
fonts\VERDANAZ.TTF
fonts\VGA850.FON
fonts\VGA860.FON
fonts\VGA861.FON
fonts\VGA863.FON
fonts\VGA865.FON
fonts\VGAFIX.FON
fonts\VGAOEM.FON
fonts\VGASYS.FON
fonts\VRINDA.TTF
fonts\WEBDINGS.TTF
fonts\WINGDING.TTF
spcmdcon.sys
bootfix.bin
System32\Drivers\te_protu.qm
System32\Drivers\gm.dls
System32\Drivers\te_protu.sm
System32\Drivers\*.bin
System32\Drivers\*.usa
System32\Drivers\*.t4
System32\Drivers\te_protm.pm2
System32\Drivers\el656ct5.sys
System32\Drivers\fusbbase.sys
System32\Drivers\fxusbase.sys
System32\Drivers\fpcibase.sys
System32\Drivers\fpcmbase.sys
System32\Drivers\atmuni.sys
System32\Drivers\stlnata.sys
System32\Drivers\EMU10K1M.SYS
System32\Drivers\cinemst2.sys
System32\Drivers\el656se5.sys
System32\Drivers\digirlpt.sys
inf\net10.inf
System32\DRIVERS\tdkcd31.sys
inf\net1394.inf
inf\net3c556.inf
System32\DRIVERS\EL556ND5.sys
inf\net3c589.inf
System32\DRIVERS\el589nd5.sys
inf\net3c985.inf
System32\DRIVERS\el985n51.sys
inf\net3sr.inf
System32\DRIVERS\srwlnd5.sys
inf\net5515n.inf
System32\DRIVERS\ip5515.sys
inf\net557.inf
System32\DRIVERS\e100b325.sys
inf\net559ib.inf
System32\DRIVERS\D100IB5.SYS
inf\net575nt.inf
System32\DRIVERS\el575ND5.sys
inf\net650d.inf
System32\DRIVERS\dfe650d.sys
inf\net656c5.inf
System32\DRIVERS\el656CD5.sys
inf\net656n5.inf
System32\DRIVERS\el656ND5.sys
inf\net713.inf
System32\DRIVERS\mxnic.sys
inf\net83820.inf
System32\DRIVERS\DP83820.sys
inf\net8511.inf
System32\DRIVERS\ADM8511.SYS
inf\netac300.inf
System32\DRIVERS\ac300nd5.sys
inf\netali.inf
System32\DRIVERS\ALI5261.SYS
inf\netambi.inf
System32\DRIVERS\AMB8002.SYS
inf\netamd.inf
System32\DRIVERS\pcntn5m.sys
inf\netamd2.inf
System32\DRIVERS\pcntpci5.sys
inf\netamdhl.inf
System32\DRIVERS\pcntn5hl.sys
inf\netan983.inf
System32\DRIVERS\an983.sys
inf\netana.inf
System32\DRIVERS\adptsf50.sys
inf\netasp2k.inf
System32\DRIVERS\aspndis3.sys
inf\netb57xp.inf
System32\DRIVERS\b57xp32.sys
inf\netbcm4e.inf
System32\DRIVERS\BCM4E5.SYS
inf\netbcm4p.inf
System32\DRIVERS\bcm42xx5.sys
inf\netbcm4u.inf
System32\DRIVERS\bcm42u.sys
inf\netbrzw.inf
System32\DRIVERS\BRZWLAN.sys
inf\netcb102.inf
System32\DRIVERS\cb102.sys
inf\netcb325.inf
System32\DRIVERS\CB325.SYS
inf\netcbe.inf
System32\DRIVERS\cben5.sys
inf\netce2.inf
System32\DRIVERS\ce2n5.sys
inf\netce3.inf
System32\DRIVERS\CE3N5.SYS
inf\netcem28.inf
System32\DRIVERS\cem28n5.sys
inf\netcem33.inf
System32\DRIVERS\cem33n5.sys
inf\netcem56.inf
System32\DRIVERS\cem56n5.sys
inf\netcicap.inf
inf\netclass.inf
inf\netcpqc.inf
System32\DRIVERS\cnxt1803.sys
inf\netcpqg.inf
System32\DRIVERS\n1000nt5.sys
inf\netcpqi.inf
System32\DRIVERS\n100325.sys
inf\netcpqmt.inf
System32
\DRIVERS\cpqtrnd5.sys
System32\ctmasetp.dll
System32\DRIVERS\rocket.sys
inf\netdefxa.inf
System32\DRIVERS\DEFPA.sys
inf\netdf650.inf
System32\DRIVERS\dfe650.sys
inf\netdgdxb.inf
System32\DRIVERS\bioprime.bin
inf\netdlh5x.inf
System32\DRIVERS\DLH5XND5.sys
inf\netdm.inf
System32\DRIVERS\DM9PCI5.SYS
inf\nete1000.inf
System32\DRIVERS\e1000nt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 深入浅出 进入 PE 世界
![提示](https://static.bdocx.com/images/bang_tan.gif)