|
原帖由 Civiwu 于 2006-12-21 07:07 PM 发表
khauyeung:你的Boot.wim怎么生成的? 我把boot.wim 用ImageX MountRW后,删除其中Programs文件夹后,用ImageX /commit后,怎么文件反而变大了? 我用ImageX /boot /capture重新打包,wim文件是缩小了,但启动时却 ...
我的Boot.wim就用VistapeBuilder本身带的Standard-7-Finalizing.script所生成,该脚本放在Project\VistaPE\Build文件夹里面:
- [Main]
- Title=7 - Finalizing...
- Type=script
- Level=7
- Description=Finalizing VistaPE...
- Selected=True
- Author=NightMan
- Version=4
- Contact=vistape@by.ru
- Date=01.12.2006
- [Variables]
- %BootTMP%=%TargetDir%\boot.tmp
- [Process]
- If,NotExistFile,"%TargetDir%\vistape.cd",FileCreateBlank,"%TargetDir%\vistape.cd"
- If,%pCheckBox1%,Equal,true,Run,%ScriptFile%,PackBoot
- If,%pCheckBox1%,Equal,false,Run,%ScriptFile%,NoPackBoot
- If,%pCheckBox2%,Equal,true,Run,%ScriptFile%,PackPrograms
- [PackBoot]
- Echo,"Preparing boot.wim..."
- DirMake,%BootTMP%
- DirMove,"%targetdir%\Program#$sFiles",%BootTMP%
- DirMove,"%targetdir%\ProgramData",%BootTMP%
- DirMove,"%targetdir%\sources",%BootTMP%
- DirMove,"%targetdir%\Users",%BootTMP%
- DirMove,"%targetdir%\Windows",%BootTMP%
- DirMove,"%targetdir%\Programs",%BootTMP%
- Echo,"Packing boot.wim..."
- If,NotExistDir,"%targetdir%\sources",DirMake,"%targetdir%\sources"
- ShellExecute,Hide,#$q%Tools%\imagex.exe#$q,"/capture #$q%BootTMP%#$q #$q%TargetDir%\sources\boot.wim#$q #$qWindows RE Image#$q /boot /compress max"
- DirDelete,"%BootTMP%"
- [NoPackBoot]
- Echo,"Preparing boot directly from cd..."
- ShellExecute,Hide,#$q%TargetDir%\Windows\System32\bcdedit.exe#$q,"/store #$q%TargetDir%\boot\bcd#$q /set {default} device boot"
- ShellExecute,Hide,#$q%TargetDir%\Windows\System32\bcdedit.exe#$q,"/store #$q%TargetDir%\boot\bcd#$q /set {default} osdevice boot"
- [PackPrograms]
- Echo,"Packing programs.wim..."
- If,NotExistDir,"%VistaTemp%\Programs",Halt,"Folder %VistaTemp%\Programs not found"
- If,NotExistFile,"%VistaTemp%\Programs\program.cd",FileCreateBlank,"%VistaTemp%\Programs\program.cd"
- ShellExecute,Hide,#$q%Tools%\imagex.exe#$q,"/capture #$q%VistaTemp%\Programs#$q #$q%TargetDir%\programs.wim#$q #$qWindows RE Programs#$q /boot /compress max"
- DirDelete,"%VistaTemp%\Programs"
- [Interface]
- pCheckBox1="Pack boot.wim",1,3,12,40,273,18,True
- pCheckBox2="Pack program.wim (request ramdisk and wim plugins)",1,3,12,60,273,18,False
复制代码
用ImageX MountRW后,删除其中Programs文件夹并不会减少boot.wim文件的大小,这个操作只能把Programs从目录中除去,而不会真正地除去文件本身。其实,对Mounted(RW) Image来说,任何操作都将只能增加它的体积而不会减少。
你用ImageX /boot /capture /compress max重新打包是对的,问题出在你只是简单的删除其中Programs文件夹。你忘记了原BSExplorer的设定文件里面可能有不小指向该文件夹的讯息。除非完全清楚那些可以安全的删除,否则我会从VistaPEBuilder所选的插件出发,不想要的插件就把它的脚本和文件夹从Project\Vistape\APP下面除去,然后让再运行一遍WinBuilder.exe,重建一遍Vistape.iso就成了。
有两个插件我是一定会得保留的:第一个是BSExplorer,作为Shell它是不可缺少的了。第二个是Nu2Menu,保留的原因是因为我在里面放了很多图标(Icons),我的BSExplorer设定文件会引用到这些图标。另外,我也会保留A43和TotalCmd,它们是Windows Explorer资源管理器的替代品。
你没看懂的第一步,Create a Bootable Windows PE RAM Media,它大意是指:你必须使用CD-ROM或者UFD建造一只可以引导的WinPE 2.0媒体,用来引导改硬盘所在的电脑。
[ 本帖最后由 khauyeung 于 2006-12-22 10:37 AM 编辑 ] |
|