欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

手工打造一个完美的WinPE3.0步骤(完美到每个细节)

程序员文章站 2022-05-11 22:54:29
手工打造一个完美的WinPE3.0步骤(完美到每个细节)WinPE是一个常规用途的操作系统,无法作为日常工作使用,而是常作为安装、故障排除和恢复的一种工具,下面为大家介绍下如何手工打造一个完美的WinPE3.0... 14-06-20...

  winpe,全称windows preinstallation environment即windows预安装环境,它不是一个常规用途的操作系统,无法作为日常工作使用,而是常作为安装、故障排除和恢复的一种工具。下面高手就来教教大家如何自己动手来制作一个完美的winpe3.0。

  一、具*作方法:

  1、把windows7光盘(或光盘镜像)里的\sources\boot.wim文件复制到d:\winpe\sources目录

  2、在附件提供imgaex目录里右键点击inf文件,选安装。(imagex 6.0 aik 封装工具)

  3、运行cmd,进入imgaex目录。

  4、imagex /mountrw d:\winpe\sources\boot.wim 2 d:\winpe\new (将d:\winpe\sources\boot.wim镜像映射到d:\winpe\new目录)

  5、删除d:\winpe\new根目录下的setup.exe文件。删除sources文件夹,很重要,可以精简winpe哟。

  6、imagex /unmount /commit d:\winpe\new (合并对d:\winpe\new目录中映像文件的修改,并将其卸载)

  7、imagex /compress maximum /export “d:\winpe\sources\boot.wim” 2 “d:\winpe\pe3\boot.wim”,把boot.wim分离并重新压缩。

  7、d:\winpe\pe3\boot.wim即为修改后的镜像。这个时候运行这个映像winpe是默认的“命令提示符”窗口。

  二、制作pe光盘镜像:

  1. 新建d:\winpe\pe,新建d:\winpe\pe\sources

  2. 复制(windows7光盘为x)x:\boot目录(包括文件)到d:\winpe\pe

  复制x:\efi目录(包括文件)到d:\winpe\pe

  复制x:\bootmgr文件到d:\winpe\pe

  复制修改后的boot.wim文件到d:\winpe\pe\sources(x为windows7光盘符)

  3. 用ultraiso提取windows7光盘引导文件,保存为windows7.bif

  4. 用ultraiso将d:\winpe\pe下的目录和文件添加到光盘镜像,加载windows7.bif,保存镜像为pe 3.0.iso

  三、图像shell(下面内容来自m$)

  winpeshl.ini 可控制是否将自定义外壳程序加载到 windows pe 而不是默认的“命令提示符”窗口。若要加载自定义外壳程序,请创建一个名为 winpeshl.ini 的文件,然后将它放在自定义 windows pe 映像的 %systemroot%“system32 中。该 .ini 文件必须包含以下部分和项:

  [launchapp]

  apppath = %systemdrive%”myshell.exe

  [launchapps]

  %systemdrive%“mydir”application1.exe, -option1 -option2

  application2.exe, -option1 -option2

  将 apppath 项设置为外壳应用程序的路径。该路径可以是完全限定路径,您也可以使用环境变量(例如 %systemroot%“system32”myshell.exe)来表示该路径。apppath 项不支持命令行选项。

  使用 [launchapps] 部分运行带命令行选项的应用程序。应用程序按照列出的顺序运行;应用程序的名称及其选项以逗号分隔。

  当退出“命令提示符”窗口或自定义外壳应用程序时,windows pe 将重新启动。

  重要事项:

  不要编辑 setupreg.hiv 的 hkey_local_machine\system\setup 注册表项中的 cmdline 值来启动外壳应用程序。cmdline 的值可调用 winpeshl.exe,winpeshl.exe 会执行很多函数,包括调用 windows pe 中的默认“命令提示符”窗口或您的自定义外壳应用程序。

  举例:用bsexplorer制作自制版windowspe,从网上下载bsexplorer程序,从cmd到imagex目录:imagex /mountrw d:\winpe\sources\boot.wim 1 d:\winpe\new,解压bsexplorer后连同文件夹一起放到d:\winpe\new\windows目录中,把上面建的winpeshl.ini,里面要指出bsexplorer.exe所在的路径,放到d:\winpe\new\windows\system32中。

  定义:

  【bs_desktop.ini】

  这个文件是用来自定义pe的桌面快捷方式的,第一行的 [desktop cfg file ver.1] 必须保留。

  格式:

  《-itembegin-》

  itemx=

  itemy=

  caption=

  exename=

  iconname=

  iconnumber=

  exedir=

  cmdparam=

  showstate=

  《-itemend-》

  举例:

  《-itembegin-》

  itemx=20

  itemy=20

  caption=资源管理器

  exename=%systemdrive%\program files\a43\a43.exe

  iconname=%systemdrive%\program files\a43\a43.ico

  iconnumber=0

  exedir=%systemdrive%\program files\a43

  cmdparam=

  showstate=normal

  《-itemend-》

  参数说明:

  每一个左边上的图标都是由这样的一段配置生成的,每个图标开头和结尾必须有 《-itembegin-》 和 《-itemend-》 , itemx= 是指图标的横向距离,默认第一列为 20 ,第二列为 100 ,第三列为 180 ,以此类推(每下一列的值都比前一列增加 80 ,这是默认的设置,可以*修改,但这是最好的设计了)。 itemy 和 itemx= 一样,但指的是横向坐标(即行数)。 caption 填什么都可以,支持中文,是图标下的名称文字。 exename则是目标文件或程序的路径(要求包括扩展名,可以不是绝对路径。允许使用系统变量)。 iconname 是此快捷方式的图标路径, iconnumber 是此图标文件中的第几个图标,默认为 0 。 exedir 是此文件或程序的运行路径。 cmdparam 是专门应用于这个程序的启动(命令行)参数(例如 nero startsmart essentials 的启动参数是 -scparameter=8 ),大部分大型软件都有用到。 showstate 是目标的显示方式,默认为 normal ,在此参数下打开窗口不会有任何变化,仍然是原样。

  【bs_logon.ini】

  这个文件是用来自定义pe的登录方式的,这里只讲解 [shell] 部分, [shell] 此行必须保留。

  格式:

  =

  举例:

  bs图形界面=%systemdrive%\program files\bsexplorer\explorer.exe

  参数说明: = 之前的内容为登陆框下拉菜单中的显示文字(允许空格和汉字),之后的内容为一个pe shell的路径,其实就是一个可执行程序,但是如果只打开一个普通应用程序的话就不会打开桌面,当此程序结束时会退回登录对话框。无论 [shell] 下面的内容你删去了什么,举例中的那行一定要保留,否则下拉菜单中不会出现 bs图形界面项,自然也无法进入桌面了。

  【bs_qlaunch.ini】

  这个文件是用来自定义pe的快速启动栏的,第一行的 [qlaunch cfg file ver.1] 必须保留。

  格式:

  《-itembegin-》

  caption=

  exename=

  iconnumber=

  《-itemend-》

  举例:

  《-itembegin-》

  caption=显示桌面

  exename=@showdesktop

  iconnumber=20

  《-itemend-》

  参数说明:与 bs_desktop.ini 文件一样,就是参数少了点。

  【bs_menuimg.bmp】

  这个文件中保存着需要用到的一些常见的小程序图标(16×16),此文章中所有的 iconnumber= 都指向这里,所以比较重要。第一个编号为 0,第二个编号为 1 ,以此类推,您可按照16×16的大小添加或修改图标。

  【bs_explorer.ini】

  这个文件中只有几个需要特别讲解的地方:

  desktopbkgndtext= 显示在桌面右下角的文字,颜色默认为白色,可*修改,值为空时会显示一段版权说明。

  desktoptextcolor= 规定了桌面上的文字颜色,格式为十六进制颜色数值,默认为 $00ffffff 。

  desktoptextbkcolor= 规定了桌面上的文字的背景色,格式为十六进制颜色数值,默认为 $ffffffff 。

  其它可能有用的参数(不做详细解释):

  nocheckfiles= 不检查文件,默认为 yes 。

  nostartmenuicon= 无开始菜单图标,默认为 no 。

  nostartmenumargin= 无开始菜单边缘空白,默认为 no 。

  nodesctopicon= 不显示桌面快捷方式,默认为 no 。

  noqlaunchbar= 不显示快速启动栏,默认为 no 。

  【bs_start.ini】

  这个文件是最重要的!它规定了开始菜单中的内容。

  格式:

  《-itembegin-》

  showinautorun=

  enableinautorun=

  parentitem=

  caption=

  exename=

  iconnumber=

  exedir=

  showstate=

  《-itemend-》

  举例:

  《-itembegin-》

  showinautorun=yes

  enableinautorun=yes

  parentitem=office

  caption=word

  exename=%systemdrive%\program files\office97\word.exe

  iconnumber=45

  exedir=%systemdrive%\program files\office97

  showstate=normal

  《-itemend-》

  参数说明: showinautorun= 和 enableinautorun= 两项好像基本在我的自定义实验中并没有什么用处,所以不做讲解。大部分参数都与以上介绍的几个文件相同,parentitem= 是指向此快捷方式放入哪个文件夹(如果要放到开始菜单的根目录下的话,就需要写入 root )。建立文件夹的格式为:

  《-itembegin-》

  showinautorun=yes

  enableinautorun=yes

  parentitem=programs

  caption=office 97

  menuid=office

  《-itemend-》

  menuid 是一个唯一的标识,普通快捷方式的 parentitem= 指向的就是这里。

  同样需要特殊说明的是建立分隔线,格式为:

  《-itembegin-》

  showinautorun=yes

  enableinautorun=yes

  parentitem=root

  caption=-

  《-itemend-》

  同样, parentitem= 的值属性同上(译为:“母物品”)。

  imagex /unmount /commit d:\winpe\new

  imagex /compress maximum /export “d:\winpe\sources\boot.wim” 1 “d:\winpe\pe3\boot.wim”

  然后把boot.wim放到d:\winpe\pe\sources中,用ultraiso制作iso文件(步骤同上)。

  至此,一个完美的winpe3.0就制作完成了,用户可以把制作好的winpe3.0安装在windows系统内,这样一来,系统遇到紧急故障时就可以通过这个来进行修复了。

相关标签: WinPE