|
原帖由 mygamexxx 于 2012-3-17 21:15 发表 
在虚拟机上重现此问题。
WCS都执行后,蓝屏(确认是执行SHOW_PART_TP.WCS后,出现异常,不重启,运行PE下的DISKGENIUS,界面一闪后,运行不成功)
蓝屏代码:
139075
启动DOS版DISKGENIUS
139080
多出 ...
看了贴图。
版本太低的原因!
请用U68.0以上。
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=205402&pid=2403452&page=261&extra=page%3D1
1302 楼
1299 楼
1255 楼
请用U68.0以上:
SHOW_PART_TP.wcs:
//函数:SHOW_PART_TP
//参数1:磁盘
//参数2:类型
//参数3:X为排除选取,否则一般选取
//参数4:H为隐藏,否则显示
_SUB SHOW_PART_TP
ENVI &&&EnviMode=1 //避免讨厌的空变量问题
ENVI &&磁盘=%1
ENVI &&tp0=%2
ENVI &&X=%3 //排除
ENVI &&op=%4 //隐藏
ENVI &&全部分区=
ENVI &&分区=
ENVI &&分区信息=
ENVI &&tp=
ENVI &&ntp=
forx * 1 2 3 4,&分区, //目前实际只操作 1-4 ,4个主分区
{
PART -hextp -phy list part %&磁盘%#%&分区%,&分区信息
MSTR &tp=<2>%&分区信息%
FIND $=%&tp%,! //过滤空分区
{
FIND $H=%&op%,! CALC -base=16 #&ntp=0xEF & %&tp% //显示
FIND $H=%&op%,!! CALC -base=16 #&ntp=0x10 | %&tp% //隐藏
IFEX $0=%&ntp%,! //不能变成空分区
{
ENVI &&OK=0
FIND $X=%&X%,! IFEX $%&tp%=%&tp0%,!! ENVI &OK=1
FIND $X=%&X%,!! IFEX $%&tp%=%&tp0%,! ENVI &OK=1 //排除
//FIND $1=%&OK%, MESS PART -super %&磁盘%#%&分区% %&ntp% @调试信息#OK
FIND $1=%&OK%, PART -super %&磁盘%#%&分区% %&ntp%
}
}
}
_END
//调用示例
SHOW_PART_TP 0 0x5 X H //隐藏除0x05外全部
SHOW_PART_TP 0 0x15 X //显示除0x15外全部
SHOW_PART_TP 0 0x15 //显示全部 0x15
//1: PART list part %&磁盘%,&全部分区
//获得该磁盘所有分区的列表, 存于变量 &全部分区
//2:forx * 1 2 3 4,&分区,
// 一个一个分区地处理, 分区号存于变量 &分区
//3: PART -hextp list part %&磁盘%#%分区%,&分区信息
// 获得该分区的详细信息。
//4: MSTR &tp=<2>%&分区信息%
// 其中第二列为 分区类型
//5.1: CALC #&ntp=0xEF & %&tp% //类型转成显示 类型
//5.2: CALC #&ntp=0x10 | %&tp% //类型转成隐藏 类型
//6:
// FIND $=%&tp%,!
// 原来不为空
// IFEX $0=%&ntp%,!
// 不能变成0类型
//7. PART -super %&磁盘%#%分区% %&ntp%
// 设置新类型
可以结帖了。
[ 本帖最后由 2012abc19701 于 2012-3-21 17:40 编辑 ] |
|