全手工制作Ghost XP之前要做点准备工作,也就是XP系统母盘、你要安装的一些软件、接管部署、电源判 
断、SRS驱动等等的文件,下面就按12345的步骤写 (其中很多内容是直接引用SKYFREE和众多前辈们的,在这 
里先感谢他们)  
========================================= 
转载请注明作者:悟己 
========================================= 
 
一.准备工作 
     
  全手工封装需要解决电源判断、SRS驱动、无用SRS驱动的禁用等等的工作,不然也就不能所谓的“万能GH 
OST”了,准备系统母盘,常用软件,skyfree的驱动选择工具和自由的风的驱动包以及realhyg的SRS驱动。 
 
A. 准备突破HAL 限制电源判断的文件 
准备突破HAL 限制电源模式判断的文件halacpi.dll、halapic.dll、halmps.dll、halaacpi.dll、halmacpi.dll、hal.dll、ntkrn 
lmp.exe、ntkrnlpa.exe、ntkrpamp.exe、ntoskrnl.exe(前面的这几个文件可以在C:\WINDOWS\Driver Cache\i386\sp2.ca 
b中提取)、dtecthal.inf(这个文件可以在别人做好的GHO中c:\windows\inf 中提取)、NTLDR(在别人做好的GHO中 
C:\下提取)其中hal.dll 更名为 halstnd.dll、ntoskrnl.exe 更名为 ntkrnlup.exe, 准备好了这些文件就可以为我们封装后 
电源判断做好了准备。 
 
B. 准备接管部署过程的文件 
既然我们知道系统部署过程是由 Windows\System32\Setup.exe 触发的,那么系统是怎么知道在第一次启动时运行 
Windows\System32\Setup.exe 的呢?经过无数前辈们的探索,发现了 CMDLine 这个键值。HKEY_LOCAL_MACHINE\ 
SYSTEM\Setup\CMDLine 键,在 封装后此键值为“ Setup.exe–newsetup -mini”,这也就是说在系统第一次启动 
时运行 Setup.exe 并加载“–newsetup –mini”参数。(如果封装时没有选最小化部署这里不会有“mini”参数) 
我们可以据此断定,之所以目标计算机第一次运行时会运行 Setup.exe 来部署系统,是由这个键值控制的。那么, 
如果我们把这个键值更改一下,让目标计算机第一次启动时运行我们所需的程序,不就能够控制部署过程了吗?因 
此我们用AU3脚本写一个代替“CMDLine” 这个键值“setup.exe” 
我的是BZDD.exe(可以随便命名),AU3代码如下: 
 
FileSetAttrib("C:\NTLDR","-RSH") 
FileDelete("C:\NTLDR ") 
FileSetAttrib("C:\NTLDR_XP","-RSH") 
FileMove("C:\NTLDR_XP","c:\ntldr") 
FileSetAttrib("C:\NTLDR ","+RSH") 
FileSetAttrib("c:\boot.ini","-RSH") 
IniWrite("c:\boot.ini","operating systems","multi(0)disk(0)rdisk(0)partition(1)\WINDOWS",'"Microsoft Windows XP Professional" /noexecute=optin /fastdetect') 
FileSetAttrib("c:\boot.ini","+RSH") 
RegDelete("HKEY_LOCAL_MACHINE\SYSTEM\setup","cmdline") 
RunWait("c:\sysprep\drvs\drvs.exe")  这是调用skyfree的驱动选择工具,根据自己修改 
Run("c:\sysprep\sysprep.exe -clean") 
这是调用清理无用SRS驱动 
RunWait("setup.exe -newsetup -mini") 
 
大家要是要调用其他的可以依照添加,我也是AU3菜鸟,但我依照skyfree的《xp定制不完全攻略》弄的出来了,多 
研究多学习是有好处的。 
 
C.第一次进桌面运行的文件 
我的是blue.exe, AU3代码如下: 
FileDelete("C:\Documents and Settings\ All Users \桌面\Windows Media Player.lnk") 
FileDelete("c:\windows\bzdd.exe") 
FileRecycle("c:\windows\drivers")这个是我静默删除第三方驱动,我不喜欢提示的^_^ 
FileRecycleEmpty("c:\") 
Run(@ComSpec&' /c ping 127.0.0.1 -n 2&del /q "'&@ScriptFullPath&'"',@ScriptDir,@SW_HIDE) 
大家可以根据自己的需要修改 
 
D.封装需要用到的文件 
在XP原装光盘\SUPPORT\TOOLS目录下解压DEPLOY.CAB文件可获取,主要用到的是factory.exe,setupcl.exe,syspr 
ep.exe三个文件;当然还有sysprep.inf配置文件 
我的sysprep.inf文件内容如下: 
;blue 
;不再等待 
 
[Unattended] 
 
DriverSigningPolicy=Ignore 
 
NonDriverSigningPolicy=Ignore 
 
OemSkipEula=Yes 
 
OemPreinstall=Yes 
 
UpdateInstalledDrivers=Yes 
 
 
[GuiUnattended] 
 
AdminPassword=* 
 
EncryptedAdminPassword=NO 
 
OEMSkipRegional=1 
 
TimeZone=210 
 
OemSkipWelcome=1 
 
[UserData] 
 
ProductKey="MRX3F-47B9T-2487J-KWKMF-RPWBY" 
 
ComputerName=* 
 
FullName=blue 
 
OrgName=不再等待 
 
[Display] 
 
BitsPerPel=32 
 
Xresolution=800 
 
Yresolution=600 
 
[RegionalSettings] 
 
LanguageGroup=10 
 
[Identification] 
 
JoinWorkgroup=WORKGROUP 
 
[Networking] 
 
InstallDefaultComponents=Yes 
 
[GUIRunOnce] 
Command0=C:\WINDOWS\blue.exe 
 
二.封装前准备 
 
    在准备好上述文件之后,我们就需要安装好WIN XP系统(安装过程我就不说了,系统都不会装也就谈不上从新封 
装了)之后,装上一些常用软件,根据自己的需要安装。安装好之后我们就要做一些工作了,如下: 
 
A.为了能驱动自己安装完成要做如下设置: 
 
在开始\运行窗口输入“gpedit.msc"打开组策略:  
 
找到“计算机配置——管理模板——系统”  
 
启用“关闭 Windows Update 设备驱动程序搜索”  
 
找到“计算机配置——管理模板——系统——Internet 通信管理——Internet 通信设置”  
 
启用“关闭 Windows Update 设备驱动程序搜索”  
 
找到“用户配置——管理模板——系统”  
 
启用“配置驱动程序搜索位置” 钩上:不搜索软盘、Windows Update(光驱不要选) 
 
忽略“设备驱动程序的代码签名”  
 
启用“关闭 Windows Update 设备驱动程序搜索”  
 
右健点桌面“我的电脑”打开“系统属性——硬件” 
 
找到“驱动程序签名”选择“忽略,安装软件不用征求我的同意” 并钩上“将这个作为系统的默认值”——确定。 
找到“Windows Update”选择“从不在update搜索驱动”——确定。 
 
B.删除计算机驱动,如下: 
 
卸载硬件驱动 
 
1.卸载网络适配器。 
2.卸载通用串行总线控制器。 
3.卸载声音、视频游戏控制器。 
4.卸载监视器。 
5.卸载显示卡( 卸载显卡是为了防止Ghost到别的机上时出现蓝屏现象)。卸载硬件驱动时如系统提示要重新启动 
则选择“否”不启动。 
 
(关键)更改计算机电源管理模式 Advanced Configuration Power Interface(ACPI) 为 Standard PC 
(关键)更改IDE ATA/ATAPI控制器为“标准双通道 PCI IDE 控制器 
 
三.封装过程 
A. 在C盘根目录下新建一个sysprep文件夹,把先前准备的factory.exe,setupcl.exe,sysprep.exe,ssysprep.i 
nf四个文件和驱动判断工具复制在这个文件夹里面;运行sysprep.exe进行封装。需要注意的是进行封装时的选项 
设置:*在系统封装画面的4个选项中,第二项“使用最小化安装”即无残留驱动安装项正是我们需要的,因此必须 
要选上。第一项“不重置激活的宽限期”和第三项“不重新产生安全标识符”都是正版用户激活用的,而我们所用 
的是免激活版,因此这两项选与不选无所谓,对GHOST克隆后的系统在使用上都无影响。第四项“检测非即插即用硬 
件”这一选项不用选。*关机模式可以根据需要选择,建议选择“退出”,以便下一步进行其他工作 
B. 将先前准备的halacpi.dll、halapic.dll、halmps.dll、halaacpi.dll、halmacpi.dll、halstnd.dll、ntkrnlmp.exe、ntkrnlpa.exe 
、ntkrpamp.exe、ntkrnlup.exe几个文件复制到c:\windows\system32下,将dtecthal.inf复制到c:\windows\inf下,将c盘根 
目录下的ntldr文件改名为ntldr_xp,将先前准备的ntldr复制到C盘根目录;去掉 C:\BOOT.INI 的只读属性,打开并在 
系统的启动参数中加上 /DETECTHAL 参数,如下: 
[boot loader] 
189 
timeout=0 
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS 
[operating systems] 
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /detecthal 
删除准备封装的系统的HAL 信息。删除注册表中以下键值,如果提示权限不足不能删除,则可用 setacl.exe 这个命令行工具修改权限后再删除。(好像直接在上面点右键可以修改权限) 
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Enum\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Enum\Root\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Enum\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Enum\Root\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI_HAL 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\ACPI_HAL 
完成上述步骤就实现了电源的判断 
C.srs驱动的处理,安装realhyg的SRS驱动并导入注册表然后在sysprep.inf中添加: 
[sysprepcleanup] 
Service=isapnp 
Service=pci 
Service=ftdisk 
Service=swenum 
Service=update 
Service=mssmbios 
Service=dmio 
Service=rdpdr 
Upperfilter=mouclass 
Service=TermDD 
Upperfilter=kbdclass 
Upperfilter=ALIM1541 
Upperfilter=AMDAGP 
Upperfilter=AGP440 
Upperfilter=AGPCPQ 
Upperfilter=SISAGP 
Upperfilter=VIAAGP 
Service=aha154x 
Service=sparrow 
Service=adpu160m 
Service=aic78u2 
Service=aic78xx 
Service=cpqarray 
Service=sym_hi 
Service=mraid35x 
Service=perc2 
Lowerfilter=perc2hib 
Service=hpn 
Service=sym_u3 
Service=symc8xx 
Service=ql10wnt 
Service=ql1080 
Service=ql1240 
Service=ql1280 
Service=ql12160 
Service=i2omp 
Service=cd20xrnt 
Service=cbidf 
Service=dac960nt 
Service=asc3550 
Service=asc 
Service=asc3350P 
Service=ABP480N5 
Service=amsint 
Service=ini910u 
Service=ultra 
Service=intelide 
Service=pciide 
Service=cmdide 
Service=toside 
Service=3wareDrv 
Service=3waregsm 
Service=aec6210 
Service=aec6260 
Service=aec6280 
Service=aec6290 
Service=aec68x5 
Service=AEC6880 
Service=aec6897 
Service=aec67160 
Service=AEC671X 
Service=ata1200a 
Service=aac 
Service=aar1210 
Service=dpti2o 
Service=adpu320 
Service=a320raid 
Service=aaatimeo 
Service=ASH1205 
Service=amdbusdr 
Service=AmdEide 
Service=arcm_x86 
Service=ahcix86 
Service=atiide 
Service=aliide 
Service=m5228 
Service=m5281 
Service=m5287 
Service=m5288 
Service=m5289 
Service=Cpq32fs2 
Service=cpqcissm 
Service=HpCISSm2 
Service=cpqarry2 
Service=cercsr6 
Service=hpt3xx 
Service=hpt374 
Service=hptmv 
Service=Hpt366 
Service=hptmv6 
Service=rr232x 
Service=rr2340 
Service=2310_00 
Service=rr172x 
Service=rr174x 
Service=nfrd960 
Service=aacsas 
Service=adp94xx 
Service=iaStor55 
Service=iaStor 
Service=iaStor70 
Service=raidsrc 
Service=iteraid 
Service=ipsraidn 
Service=JRAID 
Service=MegaIDE 
Service=dac2w2k 
Service=SYMMPI 
Service=mv61xx 
Service=mvSata 
Service=mv614x 
Service=nvgts 
Service=nvatabus 
Service=nvrd32 
Service=nvraid 
Service=fasttrak 
Service=fasttx2k 
Service=S150sx8 
Service=FastSx 
Service=sptrak 
Service=UlSata 
Service=ulsata2 
Service=fttxr52P 
Service=ql2100 
Service=ql2200 
Service=ql2300 
Service=Pnp649r 
Service=Pnp680 
Service=Pnp680r 
Service=SI3112 
Service=SI3112r 
Service=SI3114 
Service=Si3114r5 
Service=SI3114r 
Service=SI3124 
Service=SI3124r 
Service=Si3124r5 
Service=SI3132 
Service=Si3132r5 
Service=sisraidx 
Service=SiSRaid4 
Service=SiSide 
Service=viamraid 
Service=viapdsk 
Service=videX32 
Service=ViBus 
Service=vmscsi 
Service=3wareSrv 
Service=AFAMgt 
Service=ACPIEC 
Service=bb-run 
Service=cbidf2k 
Service=cda1000 
Service=dontgo 
Service=isapnp 
Service=SiFilter 
Service=SiRemFil 
Service=symc810 
Service=ViPrt 
Service=xfilt 
这样在之前制作的BZDD.EXE中的Run("c:\sysprep\sysprep.exe -clean")命令就可以在系统部署中禁用掉不用的SRS驱动服务 
 
 
D. 将bzdd.exe和blue.exe复制到c:\windows下,更改注册表项HKEY_LOCAL_MACHINE\SYSTEM\Setup\CMDLine 键的键值更改为“bzdd.exe” 
 
E.不写注册表完美解决封装后出现个人设置和Media player图标 
结束explorer.exe进程, 
在任务管理器中,点文件--新建任务--浏览--在WINDOWS文件夹下找到explorer.exe文件--打开,系统就出现个人设置窗口,封装重启就不再出现个人设置, 
再点开始--程序--windows media player 
出现它的设置窗口,其中有一项让windows media player创建快捷方式,选中它,删除桌面上的快捷方式,封装重启后将不再出现快捷方式. 
个人认为不会对系统产生不良影响 
F. 避免本地连接2出现的方法: 
删除 
("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}") 
新建 
("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}") 
删除 
("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{6BDD1FC5-810F-11D0-BEC7-08002BE2092F}") 
新建 
("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{6BDD1FC5-810F-11D0-BEC7-08002BE2092F}") 
按照以上方法就可以避免本地连接2的出现 
 
四.系统减肥 
 
关闭休眠和系统还原后重新启动计算机进入WIN PE系统,按如下减肥: 
c:\windows\$* 
(以$号开头的所有目录,补丁的反安装,约70M) 
 
c:\windows\*.log 
(虽然不大,但太多,看的不爽,) 
c:\windows\pchealth 
帮助支持中心,30M 
 
(注意删除前把 helpctr\binaries\msconfig.exe 复制到system32目录) 
c:\windows\ime\chtime 
繁体输入 (没有必要,很多输入法都支持繁体) 12M 
c:\windows\ime\imejp 
日文输入 
12M 
c:\windows\ime\imejp98 
日文输入 12M 
c:\windows\ime\imjp8_1 
日文输入 12M 
c:\windows\ime\imkj6_1 
韩文输入 12M 
c:\windows\system32\ime\CINTLGNT 
仓颉码 
3M 
c:\windows\system32\ime\TINTLGNT 
注音输入 
3M 
C:\Windows\help,除 Help\Tours\mmTour\tour.exe 和 agt0*.hlp 等数字样式的文件外,再就是几个文件名全部 
大写的保留,其它全部删除。      帮助文件,30M 
c:\windows\temp\* 
通常没东西 
c:\windows\prefetch\* 
c:\windows\installer\*.msi 
msi程序安装后剩下的一些垃圾(长名目录不能删!) 
c:\windows\Downloaded Installations\* 
msi程序安装后剩下的一些垃圾 
c:\windows\resources\themes\* 
(建议保留Classical是经典主题,Luna.Theme是XP主题 8M,不喜欢的删除吧) 
C:\Windows\srchasst,除mui目录以外,C:\Windows\msagent,除intl目录以外,其它一律删除。 
c:\windows\softwareDistribution\download\* 
(下载补丁临时存放点)  约60M 
c:\windows\system32\oobe 
激活程序(我们用的都是免激活XP,不需要) 8M 
c:\windows\web\wallpaper\* 
墙纸,留下一个好看的bliss.bmp即可,全删也行。 2M 
c:\program files\windows nt\pinball 
弹球,删了。记得删除开始菜单的连接 
5M 
c:\program files\movie maker 
全删,10M,垃圾。记得删除开始菜单的连接 
c:\program files\messenger 
 
c:\program files\msn gaming zone 
微软的游戏,垃圾 
C:\Program Files\InstallShield Installation Information\* 
安装程序留下的垃圾 
C:\Program Files\WindowsUpdate\* 
XP升级留下的垃圾 
 
最后从启计算机,进入DOS系统,运行GHOST –NOUSB –CRCIGNORE –Z9做镜像。好了,终于写 
完了,第一次写这玩意,肯定有不少地方没写到,由于本人水品有限,肯定有些地方有不足的地方, 
大家别拿砖拍我啊!^_^