|
09-27再更新:用Win7peBuilder打造Win7PE中英文版(现支持PE3.0/2.x和墙纸)
此帖是旧帖“用VistapeBuilder 012打造WinPE3.0”的延伸,阅读旧帖请往此处:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=137198&extra=page%3D6
2009-09-27:今天发表更新Win7peBuilder_Final.2009.09.27.rar,主要是针对EXPLORER作外壳时,增加墙纸背景和个性化的支持,谢谢网友yamingw发表的重要注册表资料,详情见http://bbs.wuyou.net/forum.php?mod=viewthread&tid=150599&extra=page%3D1。针对一些人因为误设boot.wim或者install.wim的container引至挂接失败,我又采用了nu852网友在433楼的建议,增加检错程序以显示挂载WIM错误,并停止程序。最近很多人想在启动时显示动态LOGO,我把脚本改了一下,使它变成默认启动;假如你不喜欢动态LOGO,或者想启动快一些进行,你可以在6-postconfig.script脚本处把quietboot检查盒钩选即可。Win7peBuilder_Final.2009.09.27.rar已经上传到无忧zhxy9804的FTP,重新上传的还有Win7pe_16385en.iso(英文版),Win7pe_16385cn.iso(简体中文版),Win7pe_16385tw.iso(繁体中文版)。
2009-08-08:微软发表了WAIK7600,我再做了一个更新Win7peBuilder_Final.2009.08.08.rar,主要是针对使用WAIK的winpe.wim作BootSrc的标准文件拷贝,补充了一些之前的遗漏。同时发放的还有使用WAIK制作的简,繁,英版本的Win7核心PE成品(Win7peCore_cn.iso,Win7peCore_tw.iso和Win7peCore_en.iso )。这些核心PE都不带EXPLORER外壳,而是以BS EXPLORER代替之,另用CubicExplorer做资源管理器,这样可以把boot.wim的体积压低30MB,而且方便了那些只有WAIK(可合法下载)而没有WIN7DVD的人也能尝试制作自己的Win7PE。核心PE除了没有Windows Explorer外,差不多有齐其他所有WIN7PE的功能,并可以设定置壁纸,引导时会显示动态Windows LOGO。Builder和核心PE都已经完成上传到无忧zhxy9804的FTP,有需要和权限的请自行下载。
请注意:新发表的使用BS EXPLORER作外壳的核心PE只是增加和提供多一种选择,它不是用来替代EXPLORER外壳的。Builder可以任你选择使用那一种外壳去建造你的PE。FTP上已有用EXPLORER作外壳的成品:Win7PE_16386en.iso(WIN7RTM 英文版), Win7PE_16386cn.iso(WIN7RTM 简体中文版),Win7PE_16386tw.iso(WIN7RTM 繁体中文版)
2009-08-01:本来没有打算在终结版本发表后再作更新,但为了做得更好,还是不能忍手,做了个Win7peBuilder_Final.2009.07.31.rar岀来,使PECMD在引导网卡的过过程更完整,可在ftp下载。我以后不再发大更新了,成品和Builder都不例外。小的更改会在本贴楼顶公报,主要是指岀更改方法,让网友自己DIY。你假如有好经验,欢迎在本帖提出分享,我会把好TIPS置顶。是功成身退的时后了,放假去。。。
2009-07-30:今天发表Win7peBuilder的终结版本,它是在2009.07.20版本的基础上,经过除错,优化,ImDisk升级,引用PECMD的RAMD和CALL命令以替代运行较慢的外部处理EXEC,增加对中文繁体版本的支持,又找到脚本对英文Win7PE的用户钉贴(User Pinned)任务栏和菜单项进行了预置,成品的WIN7PE也安装了Winpe-PPPoE包。应网友要求,保留了硬检和网检质量较好的7peldr,提供了在PECMD为基础以外的另类选择。终结版已经在Win7/Vista/2008,SP1/SP2,简体中文,繁体中文和英文之间反复测试,改正了所有已经发现的错误。终结版Win7peBuilder_Final.rar已经完成上传到无忧zhxy9804和zhaohj的FTP,在 /khauyeung/Win7peBuilder_Final/ 下面。现可下载!同时间发放的还有用终结版制成的(1) Win7PE_16385cn.iso(Win7PE RTM简体中文版),(2)Win7PE_16385en.iso(Win7PE RTM英文版,预置用户钉贴任务栏和菜单项),(3)Win6PE_6002en.iso(2008PE SP2英文版),(4)Win6PE_6001cn.iso(2008PE SP1简体中文版)和(5)Win6PE_6001tw.iso(2008PE SP1繁体中文版),有需要和权限的请自行下载。
2009-07-23:重要脚本修正,解决源DVD无法进行imagex /mountrw和wimutil /RW的问题,ImDisk.exe升级至v1.1.4.23;请解压下面文件(Win7peBuilder_ServicePatch0723.rar)替换并覆盖\WinBuilder\里面的脚本即可。此ServicePatch也可在无忧FTP下载。(7月30日已经出了终结版,建议你下载最新的Win7peBuilder_Final.rar!)
2009-07-20:今天Win7peBuilder已经进入完成阶段,从此我就真正可以撒手不管了。新发表的Win7peBuilder.2009.07.20支持使用Win7_RTM,Vista/2008_SP1和SP2作源DVD操作,自动辨别操作系统,智能生成中英文PECMD.INI和WINPESHL.INI,可用WAIK(需要预装)的PEIMG添加驱动,WIN7启动的背景颜色预置为浅蓝,图形介面的GRUB4DOS启动菜单,两分钟内完成启动和网络初始化,WIN7的BOOT.WIM体积减少至164MB,VISTA/2008的减少至152MB水平。新版Win7peBuilder.2009.07.20.rar已经完成上传到无忧的zhaohj和zhxy9804的FTP,在 /khauyeung/Win7peBuilder/ 下面。现可下载!同时间发放的还有用Win7peBuilder.2009.07.20制成的W2K8PE_SP1_CN.iso(2008SP1 Build6001中文版,152MB的BOOT.WIM)和WIN7PE_RTM_CN.iso(WIN7RTM Build7600中文版,164MB的BOOT.WIM),有需要和权限的请自行下载。PROGRAMS.WIM(英文)先前发表过,在/khauyeung/VistapeBuilder 012/目录下可以找到,把它放到硬盘或光盘根目录均可,PE启动时会自动找寻并挂载。
2009-07-09:今天完成了对Win7peBuilder改写的工作,增加了使用Vista SP1/Server2008 (Build6001)作源DVD的支持,可以兼用来制作VistaPE了。另外又增加了脚本,用来安装驱动进PE,使生成的PE可以支持更多的网卡和量存装置。Win7peBuilder还添加了其他外壳(如BS Explorer等),可用PEShell Swapper方便地替换。先进配置脚本现在功能更强大,有兴趣的不妨研究一下。新版Win7peBuilder.2009.07.09.rar已经完成上传到无忧的 FTP,在 /khauyeung/Win7peBuilder/ 下面。现可下载!
2009-07-01:今天对Win7peBuilder进行了完善工作,并成功打做了Win7pe的简体中文版。中文版Win7pe的boot.wim有198MB,比英文版本大25MB。英文版也进行了重新打做,用简体中文地区码(Locale)设定,读老九的PECMD帮助文件无误。改良版Win7peBuilder.2009.07.01.rar,中文版Win7pe_zh-CN.iso 已经完成上传到无忧的 FTP,在 /khauyeung/Win7peBuilder/ 下面。现可下载!英文版_简体中文地区码 Win7pe_en-US.iso 也完成了上传,已经可以下载了!
2009-06-29:已经完成上传 Win7peBuilder.rar,Win7pe.iso 到无忧的 FTP,在 /khauyeung/Win7peBuilder/ 下面。达权限的可下载!
前言:
Windows 7 快将登场了,看来它将替代XP的位置,是时候对Win7PE进行较详细的研究了。Boot Land那边开了个Windows 7的专题(http://www.boot-land.net/forums/index.php?showforum=77),虽然VistaPE的鼻祖Nightman很久没有露面,但有位叫yahoouk的朋友用继续用Winbuilder开发以Explorer为Shell的Win7PE(http://www.boot-land.net/forums/ ... 883a&showtopic=7250), 最近已接近完成阶段。以Explorer为Shell的Win7PE现仍存在不少已知的问题没有解决,例如桌面墙纸不能设定(传说是微软故意对PE加的锁;09-27更新:Explorer的外壳现在已经可以设置墙纸作个人化桌面背景。),QuickLaunch快登栏无效(其实是转为User Pinned用户钉帖功能),Photo Viewer观图器因为system用户登陆权限问题无法使用(可用IrfanView替代之)等等。老九最近提出想要个体形较小的Win7pe做研究,我对yahoouk的脚本进行了完善和改良后做了一个出来,现在把它发报出来,希望有助对Win7PE的继续开发。
第一部分:WinPE 3.0
1. 成品ISO光盘的启动使用最近GRUB4DOS 0.4.4支持图形菜单(gfxMenu)的版本。我采用比较简单体积较小的gfxboot 3.2,菜单可支持中文。经过我的改进,现在它可以容下十条菜单项(原来只容六项),又加入了F9重启和F10关机功能。它比传统的文字菜单要漂亮得多了:
 
引导时的动态Windows LOGO:
 
微软最近出了Windows 7的RTM版本Build7600,所以我决定采用Build 7600 RTM版本作为我的Win7PE的源文件。成品 boot.wim 有164MB大小,Explorer作的Shell,带MMC,支持网络,支持中文显示和输入,PECMD作CmdLine和加载外壳,再配合WinpeShl和Wpeinit初始化网络,用ImDisk配备了NTFS格式的RamDisk,可挂PROGRAMS。WIM..下面是成品Wim7PE的桌面加控制板的显示图,如图所示,Explorer的外壳有漂亮的Taskbar,不过桌面没有墙纸,只能改变背景颜色(Control Panel -> Personalize -> Appearence)。Builder已经把背景颜色预置为浅蓝,而不是原来的黑色。(09-27更新:Explorer的外壳现在已经可以设置墙纸作个人化桌面背景。)
英文版的Win7PE:
 
简体中文版的Win7PE:
 
再来个繁体中文版的Win7PE:
 
Builder还支持使用Vista/2008_SP1和SP2作源DVD操作,成品桌面还有可设置墙纸:
 
2. 使用鼠标右击桌面上Computer(计算机)图标,再击Manage(管理),弹出Computer Management(计算机管理)画面,那里可进行磁盘管理等操作。我在成品除了VMware的网卡VMXNET外,没有加入其他附加的装置驱动,那些3G众或者有特别硬件的可用Builder调用WAIK(要预装)的PEIMG自己动手添加。
 
中文版本Win7PE环境下的磁盘管理和Everest诊断:
 
3. Explorer的外壳,Vista样式的开始菜单,Explorer作资源管理器是那些追求“高技术内涵”人们的目标。瘦身后的Win7PE只需使用384MB內存就能运行全部这些特征。不过话要说回来,和我们日常生活一样,其实很多东西都是中看不中用的。就拿Vista样式的开始菜单来说,菜单右面的Documents(文档),Pictures(图片),Music(音乐),Games(游戏),Device Center都是无效的,它们只是放在那里而已。这些东西应该都可以除去,不过除去后菜单就变得空空如也,一点都不好看了。
 
使用Vista/2008_SP1和SP2作的VistaPE假如使用传统的开始菜单,情况要好些,但不要期望太高,因为PE到底不是等同Windows的完整功能。
 
Win7PE,或者说Windows 7才对,有一个特别的功能是比较少人提及的:用户钉贴功能(User Pinned)。我在最初接触Windows 7时,发现我们常用的快登栏(Quicklaunch)没有了。原来微软是把它转化为用户钉贴功能了:这功能容许用户右击目标程式或连结,把选择的目标锁定到任务栏,或者附到开始菜单,见下图:
 
4. 标准的WinPE 3.0是在RAM里面行走的,虽然近年大多数机器已经配备了足够的RAM, 但为了缩短载入时间,我们不想把内核填得太大。所以,我只把一些起码的程式加到内核里面:GimageX, Imdisk, Totalcmd, 7-Zip 和IrfanView。其他有用的应用程式,就外置到Windows镜像文件PROGRAMS.WIM, 让系统启动时运行的Autorun.cmd脚本把它挂载到RAMDISK B:。我这次没有再发报PROGRAMS.WIM, 因为和以前发过的相同。把它放到硬盘或者光盘的根目录就成了。我的Win7PE支持中文显示和输入,热键ALT+F9可以叫出极点五笔拼音输入法(FreeIME)的窗口。
 
重新打做后的英文版Win7pe_en-US.iso,用简体中文地区码(Locale)设定,读老九的PECMD帮助文件无误:
 
5. WinPE作为系统维护工具,网络支持是不可缺少的。我的Win7PE 3.0系统初始化过程是这样的:注册表HKLM\SYSTEM\SETUP\CMDLINE设定为PECMD MAIN PECMD.INI,启动后配置文件PECMD.INI执行如下工作:设定1024x768显示画面,载入clid.reg注册ClassID,建立系统带的程式的连结,加载Explorer外壳,探测硬件,ImDisk设定NTFS RamDisk,autorun.cmd挂PROGRAMS.WIM往RamDisk并建立Shortcut连结,呼叫winpeshl.exe,winpeshl.ini指示执行wpeinit.exe设置并开始网络,退出并返回Explorer外壳的桌面。也就是说,在系统初始化完成后,程式连结已经建立好,网络亦已经设置好,上网或者访问服务器都不成问题了。
 
6. 使用BS EXPLORER作外壳的Win7peCore核心PE 的图:
BS EXPLORER作外壳:
 
用PESHELL Swapper转换外壳:
 
保留了MMC,有计算机管理功能:
 
第二部分: 使用Win7peBuilder
WinBuilder的历史和使用方法以前已经介绍过,不在此帖重复了。下面只是重点说明用Win7peBuilder制作Win7PE的一些要点:
1. 把下载到的Win7peBuilder.rar,解压缩到C:\WinBuilder文件夹。运行C:\WinBuilder文件夹下面的WinBuilder.exe。如下图所示,按Source按钮以设定源目录(Source directory,%SourceDir%),目标目录(Target directory,%TargetDir%)和ISO文件的名称(ISO file,%ISOfile%)。源目录通常是你的Windows 7源DVD, 在那里可以找到%SourceDir%\sources\boot.wim (和 install.wim)。在我的例子中:%SourceDir%设定为C:\sources\GRMCULFRER_CN_DVD.7600。(和以前不一样,不推荐你在此使用WAIK的winpe.wim作为启动源。)目标目录和ISO文件名称都是很容易理解的,这里就不多加解释了。
 
2. 按刚才Source按钮左边的Script按钮,然后按左方树状菜单的Main Configuration,此时右边的窗口显示的是主参数的设定画面。这里,你可以设定外壳(PE Shell Explorer, Start Repair, Explorer, BS Explorer, Total Commander, qDir, CMD 七挑一),我没有配齐全部外壳,推荐你只选Explorer。假如你不明白其他项目定的意指,就采用下图的设定吧。
 
3. 扩展左边菜单树上面的Build,并按0a-PreConfig, 此时右边的窗口显示的是预置设定画面。假如你已经安装了WAIK, 这里可以让你指定它的路径,VistapeBuilder在找到imagex.exe后就会使用它挂载WIM文件。否则,WIM 文件会用wimutil.exe进行挂载。Win7源DVD上的boot.wim和install.wim,通常都带多过一套镜像,用不同的索引号(index)区分。这里的所谓container,就是让你指定你想使用的索引号(index)。请留意我在这个脚本作出了比较大的改进,使能对启动源boot.wim和安装源install.wim有更大弹性的选择:我在本画面的右下方增加了两个检查盒,让你指定使用特别的install.wim 或者/和 boot.wim进行建造,而不是局限于我们在第一步设定的源目录。有了这两个检查盒和它设置的WIM文件位置,遇到下面情况就相当有用了:Windows 7 Build 7100RC源DVD里面的boot.wim有140MB大小,而WAIK7100的winpe.wim只有110MB,比boot.wim少30MB。因此,我们可以在第一步把源目录设定为:%SourceDir%=C:\sources\GB1CULFRE_EN_DVD.7100;然后在此钩选了boot.wim的检查盒,并把lboot.wim的位置指定为C:\Program Files\Windows AIK\Tools\x86\winpe.wim,并把lboot.wim container设定为1,这样问题就得到解决了。在定义BootWimSrc和InstallWimSrc时一定要保证二者属于相同的Build,例如Build 7100的winpe.wim必须匹配Build 7100的Install.wim,否则会出错。另一个重要设定是右面窗口左下方的语系(Source Language)设定,它是指BOOT.WIM的所属语系。一般情况下,选择Auto Detect是可以让系统自动检查出来的,但一些来历不明的DVD里面的语系可能很乱,那就需要在此申明。我在本画面的右下方增加的第三个检查盒用于强制使用WimUtil作为WimTool,应用机会较少,不作解释了。
 
扩展左边菜单树上面的Build,并按0b-Add Drivers, 此时右边的窗口显示的是安装驱动的设定画面。此脚本必须配合0a-PreConfig脚本一起使用。(!!请注意,此脚本是使用来向%BootSrc%添加驱动的,如无驱动需要增加,无需要执行此脚本,应该把选择盒子的钩选符去掉!!)。这个脚本需要你的计算机装有WAIK 1.1或者WAIK 2.x才能执行。先选择用WAIK 1.1的PEIMG.EXE(推荐使用)还是WAIK 2.x的DISM.EXE(实验阶段),然后申明路径,再申明要安装的驱动其.inf所在位置即可。这里最多容许安装五个驱动。
 
假如你没有增添驱动的需要,建议你不钩选择上面两个脚本,而是钩选下面的脚本0c-PreConfig,用唯读方法挂BOOT.WIM,省去不少麻烦:
 
4. 按左边菜单树的1-Copy Files, 此时右边的窗口显示的是拷贝基本文件模式的设定画面,这里你可以选择用标准或者全拷(Standard/Full)模式进行拷贝。标准模式的拷贝,是把一组最小的核心文件拷贝到目标目录,好处当然是一个小字。Win7peBuilder.2009.07.20现在支持Win7,Vista/2008 SP1和SP2,他们用标准模式拷贝应该不成问题,在所有其他的情况下面,你应用全拷模式拷贝,以保无误。假如你不明白其他项目定的意指,就采用下图的设定吧。
 
5. 扩展左边菜单树上面的Build,并按Explorer Tweeks,此时右边的窗口显示的是Explorer的先进设定画面。因为原来的的设定已经不错,我没有花太多时间去议案研究了。有兴趣的自己研究好了。
 
6. 高级设定(5-Win7peldr & Advanced Configuration)脚本是我特别编写的脚本,目的主要是增加对中文的支持。尽管你的源CD语系(SourceCD Language)是英文English(US),你仍可设定区域语言(Locale)为简体中文(Simplified Chinese)或者繁体中文(Traditional Chinese),并且选择把预置的字符文件simsun.ttc或mingliu.ttc拷贝到%TargetDir%\Windows\fonts。此处的语言文件夹%ScriptDir%\lang包含了预置的文件,分藏在子文件夹font, nls和freeime里面。脚本容许设定你喜欢的墙纸。顶部第一部分让你决定PECMD.INI和AUTORUN.CMD两个设置文件的生成方法,默认是由脚本自动智能产生;你也好可以指定路迳,使用你自己编制好的PECMD.INI和autorun.cmd。假如你让脚本自动产生PECMD.INI和AUTORUN.CMD,同一行还有另一个选择盒供钩选:是否使用7peldr作载入器;7peldr作载入器会比使用PECMD有比较长的检测、载入硬件和网卡时间,但其检测、载入的质量也比较高,对成功安装网卡有保证。不过,现在我在PECMD使用的引导网卡过程已经相当完整,是否7peldr任君选择。
 
设置和选择好全部脚本后,按一下画面顶端蓝色三角形的Play按钮,进入建造状态,生成ISO,大功告成!
第三部分:问和答
问:能不能用最新的中文版AIK做出用EXPLORER做壳的PE3.0?
答:当然能够:1. %SourceDir%设定到你的源DVD(里面含带EXPLORER的install.wim); 2. 0-PreConfig脚本内钩选Use alternate WimSource(另选WIM的来源),并指定AIK的boot.wim位置,例如c:\program files\windows aik\tools\petools\x86\winpe.wim; 3. Shell処钩选Explorer和Tweak脚本就成了。
问:能用上win7pe,电脑配置肯定没得说的,我现在虽然用不上,但我认为以功能强大为主.体积次之..另外:X盘是不是开得太小?
答:3-Shell & Config脚本可以设定FBWF cache的大少,也就是可“写”X盘的大少,默认设定在64MB,你可以根据需要把它加大。
问:盘符错乱了,还有就是隐藏的系统文件夹看不到,不知道从哪里打开? 0808没试呢,不过不用explorer肯定会有些不习惯的,主要是资源管理器...
答:盘符错乱跟Builder无关,因为它没有做任何改变盘符的動作。要在CubicExplorer显示隐藏的系统文件夹,可以使用鼠标点击顶端菜单的View,然后钩选Show Hidden Files即可。我觉得CubicExplorer是很不错的,比微软的资源管理器还要好用。0808版本可以制标准以EXPLORER作外壳的WIN7PE,也可以制不带EXPLORER的WIN7PE,任君选择!
问:core的版本如何挂接PROGRAMS.WIM,放到根目录就行么?
答:无论是core的版本或者标准的版本,把PROGRAMS.WIM放到根目录,系统引导时会由autorun.cmd脚本自动找寻并挂接(到RAMDISK B:)。
问:按Win7peBuilder_Final.2009.08.08.rar直接做了一下,没看到有动态LOGO,不知是什么问题,能否点拨一下?
答:要看到有动态LOGO,必须在Main Configuration脚本内把Boot Manager的设定由默认的Grub4Dos改为Standard,否则后面的6-postconfig.script脚本会把BCD写成静默启动,不显示动态LOGO:
[Copy to clipboard] [ - ]
CODE:
If,"%BootManager%",NotEqual,"Standard",ShellExecute,Hide,#$q%TargetDir%\Windows\System32\bcdedit.exe#$q,"/store #$q%TargetDir%\boot\bcd#$q /set {default} quietboot on","%WindowsDir%\system32"
问:使用WAIK作源,还是不行;用win7DVD作源,出现staring windows ,然后跳到了vista的滚动条...
答:不讲你不信,在非英文语系的源boot.wim中,包括中,法,德等语系,血统纯正的反而不能显示动态的 starting windows 画面;如要显示动态画面,必须在源boot.wim里面进行混血手术:拷贝 \windows\system32\%DistLang%\bootres.dll.mui 到 \windows\system32\en-US,这里%DistLang%是指源语系,简体中文的%DistLang%是zh-CN。这些手术在Win7peBuilder_Final.2009.09.27里面已经办妥。
问:外置程序怎么加入呢?
答:外置程序PROGRAMS.WIM加到硬盘或者光盘根目录即可。
问:动态开机和那些文件或设置有关,为什么有的有,有的没有?
答:动态Windows LOGO开机需要满足两个条件:
1. %SystemRoot%\system32\en-US目录里面要有bootres.dll.mui这个文件。这点对英文语系的源DVD当然不成问题,但非英文语系的的源DVD里面的%SystemRoot%\system32\en-US就不一定带这个文件了。为此,我在最新的脚本5-Win7pe-AdvConfig.script里面有如下语句:
[Copy to clipboard] [ - ]
CODE:
#added by khauyeung for animated logo
If,%DistLang%,NotEqual,"en-US",Begin
System,ERROROFF
DirDelete,"%TargetDir%\windows\en-US"
System,ERROROFF
DirDelete,"%TargetDir%\windows\system32\0409"
System,ERROROFF
FileDelete,"%TargetDir%\windows\system32\en-US\*.*"
System,ERROROFF
FileCopy,"%t32%\%DistLang%\bootres.dll.mui","%TargetDir%\windows\system32\en-US\"
System,ERROROFF
FileCopy,"%t32%\%DistLang%\bootstr.dll.mui","%TargetDir%\windows\system32\en-US\"
System,ERROROFF
#FileCopy,"%t32%\boot\%DistLang%\winload.exe.mui","%TargetDir%\windows\system32\boot\en-US\"
System,ERROROFF
#FileCopy,"%t32%\boot\%DistLang%\winresume.exe.mui","%TargetDir%\windows\system32\boot\en-US\"
End
也就是说,假如属于非英文语系,就把bootres.dll.mui从当前语系的文件夹拷贝到%TargetDir%\windows\system32\en-US目录下面。
2. BCD文件里面不要把quietboot开动。
旧的脚本6-postconfig.script里面有关的语句是这样写的:
[Copy to clipboard] [ - ]
CODE:
If,"%BootManager%",NotEqual,"Standard",ShellExecute,Hide,#$q%TargetDir%\Windows\System32\bcdedit.exe#$q,"/store #$q%TargetDir%\boot\bcd#$q /set {default} quietboot on","%WindowsDir%\system32"
也就是说,假如你在Main Configuration脚本内没有把Boot Manager的设定由默认的Grub4Dos改为Standard,quietboot就会被开动,动态LOGO就不会显示了。这样做的好处是启动快一点。
因为很多人喜欢动态Windows LOGO开机,我在最新的脚本里面有关的语句是这样写的:
[Copy to clipboard] [ - ]
CODE:
If,"%BootManager%",NotEqual,"Standard",If,%pCheckBox1%,Equal,True,ShellExecute,Hide,#$q%TargetDir%\Windows\System32\bcdedit.exe#$q,"/store #$q%TargetDir%\boot\bcd#$q /set {default} quietboot on","%WindowsDir%\system32"
也就是说,除非你手动钩选了把quietboot设定成On,否则BCD文件里面是不会把quietboot开动的。这样做的好处是让动态Windows LOGO默认启动,缺点是启动速度较慢下来。
问:显示windows 7开机动态标语(Animated LOGO)需要有什么必要条件?
答:经验证,得如下结论:
A. 显示英文动态标语的必要条件:
0. 在BCD文件里面对应该启动项目(通常是{default})不可把quietboot设定成on。
1. 在BCD文件里面对应该启动项目(通常是{default})的区域码(locale)要设定为en-US。
2. 在\windows\system32\boot文件夹里面有winload.exe,对应语系子文件夹里面有winload.exe.mui。(一般不成问题。)
3. 在\windows\system32文件夹里面有bootres.dll,\windows\system32\en-US文件夹里面有bootres.dll.mui。(非英文语系一般不具备这条件,需要手抄動满足之。)
4. 在\windows\fonts文件夹里面有segoeui.ttf (517KB)。(一些精简版把大部分的字体文件都除去了,故显示不了动态标语)
5. 在启动盘的\boot\fonts文件夹里面有wgl4_boot.ttf。
B. 显示简体中文(zh-CN)动态标语的必要条件:
0. 在BCD文件里面对应该启动项目(通常是{default})不可把quietboot设定成on。
1. 在BCD文件里面对应该启动项目(通常是{default})的区域码(locale)要设定为zh-CN。
2. 在\windows\system32\boot文件夹里面有winload.exe,对应语系子文件夹(zh-CN)里面有winload.exe.mui。(一般不成问题。)
3. 在\windows\system32文件夹里面有bootres.dll,\windows\system32\zh-CN文件夹里面有bootres.dll.mui。(一些精简版把这文件除去了,故显示不了动态标语)
4. 在\windows\fonts文件夹里面有msyh.ttf (大于20MB)。(一些精简版把大部分的字体文件都除去了,故显示不了动态标语)
5. 在启动盘的\boot\fonts文件夹里面有chs_boot.ttf。
C. 显示繁体中文(zh-TW)动态标语的必要条件:
0. 在BCD文件里面对应该启动项目(通常是{default})不可把quietboot设定成on。
1. 在BCD文件里面对应该启动项目(通常是{default})的区域码(locale)要设定为zh-TW。
2. 在\windows\system32\boot文件夹里面有winload.exe,对应语系子文件夹(zh-TW)里面有winload.exe.mui。(一般不成问题。)
3. 在\windows\system32文件夹里面有bootres.dll,\windows\system32\zh-TW文件夹里面有bootres.dll.mui。(一些精简版把这文件除去了,故显示不了动态标语)
4. 在\windows\fonts文件夹里面有msjh.ttf (大于20MB)。(一些精简版把大部分的字体文件都除去了,故显示不了动态标语)
5. 在启动盘的\boot\fonts文件夹里面有cht_boot.ttf。
在 Win7pe环境下,要用上大于20MB(msyh.ttf或者msjh.ttf)来显示"正在启动Windows"的中文动态标语,代价是太大了。所以,我选择显示"Starting Windows"的英文动态标语,代价是517KB(segoeui.ttf)。
问:如何修改BCD的区域设置参数?
答:我喜欢用下面bcdedit.exe的命令检查和修改BCD的区域设置参数:
检查: bcdedit /store c:\winbuilder\target\win7pe\boot\BCD /enum all
修改{default}区域设置参数为zh-CN: bcdedit /store c:\winbuilder\target\win7pe\boot\BCD /set {default} locale zh-CN
修改{bootmgr}区域设置参数为zh-CN: bcdedit /store c:\winbuilder\target\win7pe\boot\BCD /set {bootmgr} locale zh-CN
修改{memdiag}区域设置参数为zh-CN: bcdedit /store c:\winbuilder\target\win7pe\boot\BCD /set {memdiag} locale zh-CN |
|