用WinBuilder制作自己的中文PE启动盘.docx
《用WinBuilder制作自己的中文PE启动盘.docx》由会员分享,可在线阅读,更多相关《用WinBuilder制作自己的中文PE启动盘.docx(26页珍藏版)》请在冰豆网上搜索。
用WinBuilder制作自己的中文PE启动盘
用WinBuilder制作自己的中文PE启动盘
一讲生成一个含网络支持和WEB浏览器最简单中文PE
WB第一次运行时,因为没有下载project,所以什么都用不了,只有Web和Download两项
WEB项是一个简单的WEB浏览器,给你查找帮助用
Download项可以下载相关project,点击它
1.下载WinBuilder:
解压后,WINBUILDER子目录只有一个文件WINBUILDER.EXE,绿色软件,不用安装,可直接运行。
.运行WinBuilder
双击"WinBuilder.exe",出现WinBuilder界面.WinBuilder只是一个脚本运行器,所有制作PE的工作由脚本完成,所以必须下载脚本后才能制作PE.
3.选择下载项目
如下图,点击Servers,选择"Nativeex.boot-"然后再左边,你可以选择COMPLETE",
然后再选择"NativeEx_barebone","NativeEx_core","Tools"三项,然后点击Download.
下拉选择框中,选择后,程序会计算你需要选择多少文件
注:
BareBone和Core必须一起选择,因为nativeEX_BAREBONE会调用nativeEX_CORE中的文件
4.项目下载完成
下载完成后,theWB会重启,重启后,多出了SCRIPTS选项卡:
5.选择XPCD源路径
在SourceDirectory中,点击文件夹图标,选择中文XP或2003安装盘所在路径
6.运行,点击Script回到原界面,什么都不要选择,直接点击右上角蓝色PLAY图标
完成后,WinBuilder程序会生成ISO文件,并用qEMU模拟器直接启动运行PE
当然,这只是一个最简单的学习用PE,其它的就要靠你自己去完成了.
第 2 页脚本分析
第二讲:
脚本分析
.nativeEx_barebone->Basic->!
WBManager
1)CheckTools
此脚本检查\projects\tools子目录有无相关工具软件,如果没有的话,从网上下载.
此脚本只需运行一次下载完所有工具软件即可,以后无需再运行.
脚本单独运行方法:
如下图,点击CHECKTOOLS,再按右边绿色PLAY按钮
Bug:
这个脚本会令你遇到WB的第一个BUG
WB074中,下载WB074后,如果把winbuilder.exe直接解压到winbuilder074子目录时,此脚本无法成功运行,子目录必须不含“0”,所以请把子目录改为winbuilder74.
WB075bata1运行此脚本不报错,但无法用此下载文件,经WB作者确认,此BUG会在WB075Bata2中消除。
2)DefineFundamental
此脚本作一些基本定义:
1)SHELL类型:
命令行/图形
2)Ramdrive盘符:
B:
/ R:
3)"DocumentsandSettings"位置:
Ramdrive/系统盘(X:
)
如果选择 Ramdrive,必须在Basic->Shells->Addons选择一种Ramdrive(Imdisk或Ramdisk)
如果选择 系统盘(X:
),必须在Finish->CreateImage->CreateImage选择AddFBWF(令x盘可写).
4) 在生成PE前清空\target\子目录
5) 生成的PEISO启动时有"HitanykeytobootfromCD",一般不选
此脚本必选,要在复选框中打勾
3) VerifyProject
此脚本作检查各脚本选项间有无冲突,但作得不完美,检查花时比较长,感觉浪费时间.
此脚本缺省是选择的,但建议不选
2. nativeEx_barebone->Basic->Build
1)RetrieveProject
此脚本从CD源盘中取得相关信息放到\Workbench\nativeEx_barebone\UserData\ProjectInfo.ini中,并删除旧ISO文件
此脚本必选,要在复选框中打勾
2)Makedirectories
此脚本删除\targets\NativeEx\子目录,并重新建立\targets\NativeEx\I386等PE相关目录
注意:
如果无法删除\targets\NativeEx\子目录,程序会报错并停止,必须关闭打开\targets\NativeEx\子目录内文件的相关程序后重头开始执行全部脚本
此脚本必选,要在复选框中打勾
3)HoJoPEHivesFactory
此脚本根据源CD生成所有注册表文件及TXTSETUP.SIF文件
**注:
2008-6-13增加对中文XP支持,请检查此脚本版本号>=43(方法:
点击右边大图标以编辑脚本,再点击"Description"选项卡)
此脚本必选,要在复选框中打勾
4)BuildModel
此脚本根据源CD的语言,生成\documentsandsettings\子目录,如果用中文CD,会生成\桌面\,\开始菜单\等
然后压缩到MODELRAM.EXE,PE启动后,再解压到脚本DefineFundamental所指定的SettingsDrive中
此脚本必选,要在复选框中打勾
5)CopyandExpandfiles
此脚本从源CD中拷贝或解压文件到PE
此脚本必选,要在复选框中打勾
3.nativeEx_barebone->Basic->Shells
1)Explorer
此脚本把PE的shell设置为Windows的EXPLORER.EXE,并作一些设置。
此脚本必选,在复选框中打勾
2) Addons->ImDisk
此脚本增加RAMDrive,你可以设置RamDrive大小及文件系统格式
此脚本可选,如果你在DefineFundamental中指定"DocumentsandSettings"位置为Ramdrive,则必选ImDisk或RAMdisk之一
此脚本与RAMDisk脚本冲突,只可选其中之一。
3) ExplorerTweaks->MiscSettings
此脚本设置PEloader作为shell的引导器,还有numlock设置
此脚本必选,在复选框中打勾
注:
PELoader在PC模拟器(qEmu,VirtualBox)中表现似乎不太稳定,有时会假死,对鼠标键盘无反应。
以后会提到如何用用脚本实现用PELOGON.EXE及PECMD.EXE作PE引导器
4. nativeEx_barebone->Basic->Tweaks
1)DisplayProperties
此脚本设置显示属性
此脚本可选
2)driverSiging
此脚本屏蔽驱动程序数字验证
此脚本可选
5.nativeEx_barebone->Apps->Internet->
1)OffByOneWeb
此脚本安装一个简单的网页浏览器,对中文支持不太好,只是用来测试网络连接用。
此脚本可选
6.nativeEx_barebone->Apps->Network
1)PENetwork
此脚本安装网络组件,及PENetwork.exe作为网络设置工具,如果想要网络支持,必须选择
此脚本必选
此脚本设置有点复杂,建议先用缺省设置,熟悉后再作调整
7.nativeEx_barebone->Apps->Productivity
1)NotePad
此脚本安装记事本程序
此脚本必选
8.nativeEx_barebone->Apps->System
1)RegistryEditor
此脚本安装注册表编辑器
此脚本必选
2)TaskManager
此脚本安装任务管理器
此脚本必选
9.nativeEx_barebone->Drivers->
1) qEmu0.9.0NetworkDriver
此脚本安装qEmu的网络驱动,如果用qEmu,则必选
此脚本可选
2) VirtualBox/VMWareNetworkDriver
此脚本安装VirtualBox/VMWare的网络驱动,如果用VirtualBox/VMWare,则必选
此脚本可选
3) VirtualPCIntelNetworkDriver
此脚本安装VirtualPC的网络驱动,如果用VirtualPC,则必选
此脚本可选
10.nativeEx_barebone->Finish->1Optimizations
1)autoCompress
此脚本CAB压缩一些在\SYSTEM32\DRIVERS\下的SYS文件成SY_.
注,此版本2008/6/6升级到v7,旧版本v6会压缩USB驱动程序导致USB热插拨失效
此脚本可选
2)autoUPX
此脚本用UPX压缩EXE及DLL文件,以减小PE占用空间,可以减18M左右,效果十分显著
此脚本可选
3)ChinesePRCSupport
此脚本提供中文支持,添加中文字体,中文格式,中国TIMEZONE
此脚本必选
4)regCompact
此脚本对注册表减肥,有时会出错,导致失败,感觉有BUG,最好不选
此脚本可选
11.nativeEx_barebone->Finish->2CreateImage
1)CreateISO
此脚本创建PE的光盘映像ISO文件,还可添加FBWF支持,不过要自己指定FBWF文件,版权意识真强
此脚本必选
12.nativeEx_barebone->Finish->Emulation
1)RunISOinqEmu
此脚本用qEmu做PC模拟器,运行PEISO文件。
qEmu是一个简单的PC模拟器,WB自带,功能不强,慢
此脚本可选
2)RunISOinVirtualBox
此脚本用VirtualBox做PC模拟器,运行PEISO文件。
VirtualBox是一个开源的免费PC模拟器,需要下载安装。
VirtualBox速度快,建议用它
下载安装后,VirtualBox不用作任何设置,此脚本会自动调用VirtualBox来启动PE
如果你下载VirtualBox最新1.6版本,需要脚本v14才可运行
此脚本可选
3)RunISOinVMware
此脚本用VMware做PC模拟器,运行PEISO文件。
同样,VMware也是需要下载安装。
此脚本可选
好了,所以脚本简单介绍完毕,让我们回顾一下,典型的脚本选择
NativeEx_Barebone
-Basic
-!
WBManager
CheckTools(可以单独运行一次,以后都不选)
DefineFundamental
-Build
RetrieveProjectInfo
MakeDirectories
HoJoPEHivesFactory
BuildModel
CopyandExpandfiles
-Shells
Explorer
-Addons
RAMDisk
-ExplorerTweaks
MiscSettings
-Tweaks
DisplayProperties
driverSinging
-Apps
-Network
PeNetwork
-Productivity
Notepad
-System
RegistryEditor
TaskManager
-Drivers
qEmu0.9.0NetworkDriver
UniversalVideoDriver
VirturalBox/VMwareNetwork
VirtualPCIntelNetworkDriver
-Finish
-1Optimization
autoCompress
autoUPX
ChinesePRCSupport
-2CreateImage
CreateISO
-3Emulation
RunISOinVirtualBox(也可用QEMU)
设置好后,点击右上角蓝色PLAY按钮,耐心等待(我的PCCPUE6300,RAM2G,用时约5分钟)然后你就能在PC模拟器中看到PE正在运行了。
细心的朋友应该可以发现,这只是一个最简单的全内置型PE,没SATA,没USB热插拔。
。
。
不支持RAM方式启动,没有PECMD,跟无忧上流行的PE相比,简直一无是处。
所以,如果你想找一个好用的PE,你可以离开了,如果你是一个PE新手,那么我建议你用本文介绍的方法来学习制作PE。
下面,将会介绍WB的脚本,如何找合适的脚本,如何调试脚本,如何修改脚本。
第 3 页WinBuilderScript脚本入门
第三讲WinBuilderScript脚本入门
1.简介
前面讲过,WINBUILDER只是一个脚本语言解释运行程序,PE的制作,都是靠脚本来完成。
Winbuilder脚本,是以.script为后缀的纯文本文件,可以用任何文本文件编辑工具来编辑,当然,WINBUILDER也自带编辑器,并且有脚本精灵提供脚本语法帮助,但是WINBUILDER脚本编辑器的BUG也不少,需要一点时间适应。
2.脚本三大部分
一个典型的winbuilder脚本,是一个类INI文件如文本文档,通常由四大部分组成:
[MAIN][VARIABLE][PROCESS][INTERFACE]
1)MAIN:
脚本的基本定义,这一部分可以看成是一个简单的INI文件
变量键值列表:
Title-脚本名字,会在中WINBUILDER中显示
Description-脚本基本描述,简单描述该脚本功能
Author-作者
Credits-对脚本有帮助的人的信息
Date-脚本更新日期,可用任意日期格式,推荐用"yyyy-mm-dd"格式
Version-脚本的版本号
Website/topicdiscussion-帮助信息或讨论组的网址链接
download_level-下载级别,定义在下载一个项目时,用那种模式(分最小,推荐,完全,BATA下载模式)下载是会下载到这个脚本
Selected-定义在项目中有没有选择这个脚本,在生成PE时,会不会运行该脚本。
键值有三种TRUE/FALSE/NONE,NONE表示在WINBUILDER中没有复选框让你选择是否运行该脚本。
Locked-是否允许用户编辑该脚本,键值有两种True/False
Level-一个非常重要的键值,用来定义脚本在生成PE时的运行顺序,键值用数字1-10表示,LEVEL越小,优先级越高
脚本运行顺序:
制作PE时,脚本的运行顺序对PE的生成很重要,如果脚本运行的顺序不对,可能会导致PE无法生成。
在WINBUILDER界面中,在树型列表中脚本的顺序,代表了脚本在生成PE时代运行顺序。
WINBUILDER脚本运行及在界面中显示顺序:
LEVEL->子目录名->文件名
LEVEL相同的情况下,先按子目录名排序,这样就保证了同一子目录内的文件在界面中能显示在一起
NativeEx的!
WBManager和Build子目录中的文件,LEVEL都是1,所以按子目录排序,!
WBManager就排在Builder前面
LEVEL相同,子目录相同,则按文件名来排序
Build子目录中,只看脚本标题,会觉得没有顺序,其实只要看他们所对应的文件就知道是按文件名排序的了
RetrieveProjectInfo ------------ 1-ProjectInfo.Script
Makedirectories ------------ 2-MakeDirs.Script
HoJoPEHivesFactory------------ 3-hivesFactory.Script
BuildModel ------------ 4-BuildModel.Script
CopyandExpandfiles------------ 5-CopyAndExpand.Script
在Winbuilder界面,指着一个脚本的图标,可以进入脚本编辑界面,在点击Scription,可以修改脚本中MAIN的内容
2)Variables变量,定义用户变量,和MAIN一样的INI风格
[variables]
%workdir%=c:
\myPath
%project_title%="MyBootDisk"
3)Process过程
Winbuilder的重要部分,所有生成PE命令都在这一节实现。
脚本运行的结果将存放到日志中,脚本运行完成后,可以在日志界面中查看脚本运行结果。
4)Interface界面
界面一节定义脚本在Winbuilder中的用户界面,可以介绍脚本和提供用户可选择内容
Winbuilder提供界面编辑器,用来帮助我们设计脚本界面
界面编辑器功能简单,BUG也不少,如果对界面不满意,可以直接修改脚本[Interface]内容
[Interface]
pTextLabel1="WiththisscriptyoucancreateanISOimagethatwillbebootablebymanypcemulatorsandlatercanbeburntintoaCD/DVDorotherbootablemedia.",1,1,15,10,468,42,8,Normal
pTextLabel5="MKISOFSisanopensourcetoolthatwillcreateanISOfilesystembasedonyourbootablebuild,thiswillresultinasinglefilewithextension.ISO",1,1,15,82,411,42,8,NormalpTextBox1="Volumename",1,0,15,142,198,21,nativeEx
pWebLabel1="What'sanISOfile?
",1,10,15,58,90,18,http:
//en.wikipedia.org/wiki/ISO_image
pButton1="CreateanewISOfile",1,8,237,133,150,30,process,create5.bmp
pCheckBox1="ShowmkISOfswindow",1,3,15,181,129,18,True
pTextLabel6="ThisoptionletsyouchooseifyouwanttorunsilentlymkISOfs.ThisprocedurecantakemuchtimeifyourbuildistoobigandWinbuilderseemstohang!
",1,1,163,172,333,42,8,Normal
pBevel1=pBevel1,1,12,12,218,471,79
pCheckBox2="AddFileBasedWriteFilter.",1,3,26,237,228,18,True
pTextBox2="Size/MB",1,0,306,254,100,21,64
5)自定义节(自定义过程)
除了上面提到的四大部分外,我们也可以自定义节作为自定义的用户过程,并且在[PROCESS]中调用
[自定义节1]
命令1...
命令2...
[自定义节2]
命令1...
命令2...