本帖最后由 826773297 于 2015-3-21 15:05 编辑
- _SUB WINPEDISM,W560H487,Dism 系统恢复辅助工具,,SHELL32.DLL#159,15,,-top -forcenomin
- FDRV AllDrive=
- ITEM ITEAA,L433T23W60H26,浏览,CALL OPENWIM
- LIST LISBB,L45T27W371H347,请选择一个要恢复的WIM文件....,,
- ITEM ITECC,L113T358W329H76,开始安装,CALL SETUPKSA,SHELL32.DLL#159,-
- RADI RADDD,L135T266W60H30,重启,CALL SHUTDOWNREBOOT,-0,1
- RADI RADEE,L215T266W60H30,关机,CALL SHUTDOWNREBOOT,-0,1
- ITEM ITEFF,L114T75W60H24,浏览,,,16
- LIST LISGG,L45T77W60H100,%AllDrive%,
- LABE LABHH,L45T52W445H17,请选择要恢复的WIM文件。,,
- LABE LABII,L182T78W309H18,请选择待恢复分区。,,
- LIST LISJJ,L45T121W60H100,%AllDrive%,
- ITEM ITEKK,L115T118W60H26,浏览,,,16
- LABE LABLL,L184T122W308H18,请选择启动分区。,,
- LABE LABMM,L45T165W445H18,提示:此工具仅适用于支持DISM的WINPE或RAMOS系统中执行~!,,
- LABE LABNN,L45T195W445H48,说明:如果您的WIM文件在ISO映像中,请先挂载此ISO映像...,,
- RADI RADOO,L136T316W60H30,待开发,,-0,2
- RADI RADPP,L214T316W60H30,待开发,,-0,2
- RADI RADQQ,L299T316W60H30,待开发,,-0,2
- LIST LISRR,L52T322W60H100,默认|其他,CALL JCXZX,,-
- CHEK CHESS,L52T266W60H30,完成后:,CALL YN_DDD,
- IFEX C:,TEAM ENVI @LISGG=C:|ENVI @LISJJ=C:!TEAM ENVI @LISGG.isel=1|ENVI @LISJJ.isel=1
- ENVI @LISBB.SEL=请选择一个要恢复的WIM文件....
- ENVI @LISRR.SEL=默认
- TIME -t:1 TimerO,1000,CALL SSWIMWJ
- FIND $%AllDrive%=,!ENVI FQYXLJ=YES
- _END
- _SUB SHUTDOWNREBOOT
- FIND $%RADDD.Check%=0,!ENVI SUTWOS=CQ
- FIND $%RADEE.Check%=0,!ENVI SUTWOS=GJ
- _END
- _SUB SETUPKSA
- FIND $%WIMYXWJ%=YES,FIND $%FQYXLJ%=YES,IFEX %SystemRoot%\System32\DISM.EXE,CALL KSSETUPWIM!CALL CWXXSM
- _END
- _SUB CWXXSM
- FIND $%WIMYXWJ%=YES,!MESS 提示:未选择正确的WIM文件~!@开始安装出错 #OK *10000
- IFEX %SystemRoot%\System32\DISM.EXE,!MESS 您的PE或RAMOS貌似不支持dism哦~!@开始安装出错 #OK *10000
- FIND $%FQYXLJ%=YES,!MESS 分区信息有误,请检查~!@开始安装出错 #OK *10000
- _END
- _SUB KSSETUPWIM
- ENVI @LABMM=正在释放%LISBB%的第1卷到%LISGG%
- EXEC =DISM.EXE /apply-image /imagefile:%LISBB% /index:1/applydir:%LISGG%\
- ENVI @LABMM=正在设置安装分区%LISGG%和启动分区%LISJJ%
- EXEC =bcdboot.exe %LISGG%\windows /s %LISJJ% /l zh-cn
- FIND $%GX_YN%=YES,FIND $%SUTWOS%=CQ,TEAM MESS 还原成功,即将重启~!@还原成功 #OK *50000|SHUT R
- FIND $%GX_YN%=YES,FIND $%SUTWOS%=GJ,TEAM MESS 还原成功,即将关机~!@还原成功 #OK *50000|SHUT
- FIND $%GX_YN%=NO,ENVI @LABMM=提示:此工具仅适用于支持DISM的WINPE或RAMOS系统中执行~!
- _END
- _SUB SSWIMWJ
- FORX /S:2 /O:N \*.wim,installwim,0,CALL WWWWWW
- ENVI @LABHH=请选择要恢复的WIM文件。
- FIND $%installwim%=,ENVI @LISBB.DEL=没找到WIM文件,请检查.!TEAM ENVI WIMYXWJ=YES|ENVI @LISBB.DEL=请选择一个要恢复的WIM文件....|ENVI @ITECC.Enable=1
- ENVI AllDrive=
- _END
- _SUB WWWWWW
- ENVI @LABHH=正在搜寻WIM映像文件,最多显示19个....
- ENVI @LISBB.ADD=%installwim%
- ENVI @LABHH=找到:%installwim%
- WAIT 450
- ENVI @LISBB.isel=1
- _END
- _SUB JCXZX
- FIND $%LISRR%=其他,TEAM ENVI @RADOO.Enable=1|ENVI @RADPP.Enable=1|ENVI @RADQQ.Enable=1
- FIND $%LISRR%=默认,TEAM ENVI @RADOO.Enable=0|ENVI @RADPP.Enable=0|ENVI @RADQQ.Enable=0
- _END
- _SUB YN_DDD
- FIND $%CHESS.Check%=0,ENVI GX_YN=NO!ENVI GX_YN=YES
- FIND $%GX_YN%=YES,TEAM ENVI @RADDD.Enable=1|ENVI @RADEE.Enable=1|ENVI @RADDD.Check=1|ENVI SUTWOS=CQ
- FIND $%GX_YN%=NO,TEAM ENVI @RADDD.Enable=0|ENVI @RADEE.Enable=0|ENVI @RADDD.Check=0|ENVI @RADEE.Check=0|ENVI SUTWOS=
- _END
- _SUB OPENWIM
- BROW Boot_WIM,C:\install.wim,请选择要安装的WIM映像文件,wim
- FIND $%Boot_WIM%=,!ENVI @LISBB.ADDSEL=%Boot_WIM%
- _END
- CALL WINPEDISM
复制代码
求小白鼠测试一下,有很多问题没有解决,如何利用PECMD获取WIM映像分卷信息,另外请大家帮我测试一下这样写是否正确,我还没测试哈,帮我在虚拟机那里走一轮
传一个附件上来,还没改善好.....
外壳基本弄好,就差DISM恢复系统和引导处理了,希望能搞定WIM映像分卷信息的问题,现在默认是安装第一分卷。
启动后会自动搜索二级目录,如果文件夹较多会卡一下子....
|