|
这两天我不断苦思,如何在 PECMD.INI 里面,分辨出启动介质是否 UDm 。不是的话就不要去执行 UDm 方面的代码,节省时间。可惜,一直失败!这个是最新的写法。在普通闪存盘启动后,PECMD.LOG 显示如下(检测到磁盘和分区号码都是 5 ):
--------------------------------------------------------------------------------------------------------
319 {CALL CHECK_UDm}
338 [PART -fill list drv Z:,&v] <0> :操作成功完成。
339 [MSTR &v1=<-1> 1 11 1 32256 2032632320 63 2032664576 Z: 5] <0> :操作成功完成。
340 [MSTR &v2=<1> 1 11 1 32256 2032632320 63 2032664576 Z: 5] <0> :操作成功完成。
341 [MOUN -udm listudm -udfs -ret: &&UDmList \\.\PhysicalDrive5] <0> :操作成功完成。
319 [CALL CHECK_UDm] <0> :操作成功完成。
320 {IFEX $=,LOAD Z:\WAIPE\PERAM.INI!}
320 {LOAD Z:\WAIPE\PERAM.INI}
这个结果是正确的。但是在 UDm 多分区闪存盘 MBS5 里面,PECMD.LOG 却有如下显示:
------------------------------------------------------------------------------------
319 {CALL CHECK_UDm}
338 [PART -fill list drv Q:,&v] <0> :操作成功完成。
339 [MSTR &v1=<-1>] <0> :操作成功完成。
340 [MSTR &v2=<1>] <0> :操作成功完成。
341 [MOUN -udm listudm -udfs -ret: &&UDmList \\.\PhysicalDrive] <0> :操作成功完成。
319 [CALL CHECK_UDm] <0> :操作成功完成。
320 {IFEX $=,LOAD Q:\WAIPE\PERAM.INI!}
这是个错误的显示,由于磁盘和分区号码都没有检测出来,故而导致了没有正确执行下面代码:
---------------------------------------------------------------------------------------------------------
CALL CHECK_UDm `启动检测 UDM 深度隐藏分区
IFEX $%&UDmList%=,LOAD %OPDrv%\WAIPE\PERAM.INI !
{
ENVI^ EnviBroad=0 `系统加速
SET$ NL=0D 0A
SET &OUTCFG=
ENVI $MyDrv0=%MyDrv% `设置主盘符
ENVI DriveType=
FORMX DriveType %MyDRV% `检测DOC盘类型
ENVI $MyDrv2=%MyDRV% `设置DOC盘盘符
FIND MEM<1200,!TEAM SET OUTCFG=LOAD "%&CurFile%"*DoOUTCFG %OPDrv%\WAIPE\PERAM.INI|LOAD %OPDrv%\WAIPE\PERAM.INI
REGI $HKLM\SOFTWARE\PELOGON_U\OUTCFG=%&OUTCFG%
...................................
}
附去两个 PECMD.LOG 及 PECMD.INI 已供参考。劳烦M大再帮忙修改一下。非常感谢!
|
-
-
PECMD.7z
29.05 KB, 下载次数: 3, 下载积分: 无忧币 -2
|