872777825 发表于 2012-5-31 14:52:15

有双隐藏分区系统下获取硬盘分区信息错误?

本帖最后由 872777825 于 2012-5-31 15:00 编辑



如上图,戴尔电脑安装了 win764位正版系统有两个隐藏分区

一个是win7系统划分的100M 隐藏的启动引导分区

一个是戴尔自带带的一键还原隐藏分区

小弟想或许相关硬盘分区信息   却出现了以下错误已将代码编译成 x64



工具代码如下#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_UseX64=y
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
FileInstall('dsptw.exe', @TempDir & '\')
RunWait(@ComSpec & ' /c ' & @TempDir & '\dsptw.exe /A /PDR >' & @TempDir &'\diskinfo.txt', @TempDir, 0)
$str = FileRead(@TempDir &'\diskinfo.txt')
$sR = StringRegExp($str, '(:)\t(\d:\d+)\h*\tA\t', 3)
$sR = StringRegExp($str, '(:)\t(\d:\d+)', 3)
If IsArray($sR) Then
   for $i = 0 to UBound($sR)-2 Step 2
         If StringInStr($sR[$i], 'f') Then $ghodir = $sR[$i+1]
   Next
EndIf
MsgBox(0, '找到 D 盘分区信息', $ghodir)麻烦各位老师帮忙看看

shqf 发表于 2012-5-31 15:07:00

是哪里出了问题,感觉应先确定一下。先看diskinfo.txt里的内容,不完整的话,可能是dsptw.exe,不过这个可能性不大。如完整的话,则可能是正则的问题了,那你贴出txt的内容来吧。

872777825 发表于 2012-5-31 15:35:19

回复 2# shqf


在只有一个100M隐藏分区的虚拟机下测试   正确可以获取到正常的信息

但到了两个隐藏分区的就出现问题了

刚才忘了看diskinfon.txt文件了一看错误就郁闷了
等下看看
远程在朋友机器上测试    他人现在不在
唉 ....麻烦 测试个东西都没环境

872777825 发表于 2012-5-31 16:35:35

回复 2# shqf


    晕死了   竟然获取不到信息怎么回事呢
只有100M隐藏分区可以的   
多了个一键还原隐藏分区就不行了

shqf 发表于 2012-5-31 16:58:41

真的是dsptw.exe 有问题?这个命令WIN下也能用的,看看获取的情况。还有在DOS下运行它,看看有无返回错误代码。代码是几?好象还有个参数\Y,我查不到关于它的功能的有关资料,加上一试?
页: [1]
查看完整版本: 有双隐藏分区系统下获取硬盘分区信息错误?