找回密码
 加入
搜索
查看: 2397|回复: 2

关于RegEnumkey()返回值问题。。。

[复制链接]
发表于 2008-7-3 15:02:54 | 显示全部楼层 |阅读模式
以下是一段au3代码,按道理函数无数据可读时会返回空串,并设置@Error<>0,可是我的机器上却是一个死循环,返回的值貌似“没有可用的数据了。”,感觉返回值怪怪的。你们看看是不是也是这情况?
$IDEkey="HKLM\SYSTEM\CurrentControlSet\Enum\PCIIDE\IDEChannel"
$ClassKey="HKLM\SYSTEM\CurrentControlSet\Control\Class"

dim $IDEch[1]
$n=0
While 1
        $n=$n+1
        $TEMP=RegEnumkey($IDEkey,$n)
    MsgBox(0,"",$TEMP)
        If  @error <> 0  Then ExitLoop
        ReDim $IDEch[UBound($IDEch)+1]
        $IDEch[$n]=$TEMP
WEnd


[ 本帖最后由 顽固不化 于 2008-7-3 16:27 编辑 ]
发表于 2008-7-3 15:50:16 | 显示全部楼层
问题出在第9行MsgBox(0,"",$TEMP)上.
因为当这个语句执行成功后,@error的值就变成0了,所以你会进入死循环.

将9和10行的内容换一下就可以了.
 楼主| 发表于 2008-7-3 16:26:44 | 显示全部楼层
原帖由 andywth 于 2008-7-3 15:50 发表
问题出在第9行MsgBox(0,"",$TEMP)上.
因为当这个语句执行成功后,@error的值就变成0了,所以你会进入死循环.

将9和10行的内容换一下就可以了.



说的对,@Error承接了MsgBox的错误了。谢谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-19 13:07 , Processed in 0.071590 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表