找回密码
 加入
搜索
查看: 1114|回复: 4

AUTOIT3--DriveStatus返回的$var值总是是UNKNOWN,为什么?

[复制链接]
发表于 2009-3-20 15:14:52 | 显示全部楼层 |阅读模式
1.先查找系统配置是否有光驱
2.如果没有光驱则跳过下面的3.4.5.6.步骤
3.如果有光驱则检测光驱内是否有光盘
4.如果有光盘则提示“有光盘”(其实我想打开播放器的,用这个先代替)
5.如果没有光盘则提示“请插入光盘,点确定”
6.当点击“确定”后,再重新做3.4.项的判断,直到检测到光盘为止。

如何将以上6步连接成一段可用的角本啊,我是初学者,现在IF判断用得不佳,看了帮助,实在是不会将上面写正确,请大家帮帮忙,可以写给我吗?


请看3楼有脚本补充!!


[ 本帖最后由 guanjl 于 2009-3-23 16:52 编辑 ]
发表于 2009-3-21 13:04:26 | 显示全部楼层
DriveGetDrive ( "类型" )
DriveStatus ( "路径" )
 楼主| 发表于 2009-3-23 14:21:45 | 显示全部楼层
$DRIVE=DriveGetDrive ( "CDROM" )
If NOT @error Then
$var=DriveStatus ( "$DRIVE[1]" )
Else
MsgBox(16,"", "系统没有发现光驱!请检查!!")
ENDIF
if $var="NOTREADY" Then 
        MsgBox(16,"", "无光盘" )
        ElseIf $var="UNKNOWN" Then
MsgBox(16,"", "不管是插入光盘还是没光盘,$var的值它都是UNKNOWN" )
Else
        IF $var="READY" Then RUN("C:\Program Files\StormII\Storm.exe")
ENDIF


请看看是哪里错了,
当拔下光驱后,运行会提示“系统没有发现光驱!请检查!!”,是正常的。
接上光驱后,不管是插入光盘还是没光盘,DriveStatus返回的$var值都是UNKNOWN,有点奇怪啊,是哪里有问题吗?

[ 本帖最后由 guanjl 于 2009-3-23 14:24 编辑 ]
发表于 2009-3-23 16:17:09 | 显示全部楼层
如果有光盘,它就能ready!~~~~~~~·

$DRIVE = DriveGetDrive("CDROM")
If Not @error Then
        $var = DriveStatus($DRIVE[1]&"\")
Else
        MsgBox(16, "", "系统没有发现光驱!请检查!!")
EndIf
If $var = "NOTREADY" Then
        MsgBox(16, "", "无光盘")
ElseIf $var = "UNKNOWN" Then
        MsgBox(16, "", "不管是插入光盘还是没光盘,$var的值它都是UNKNOWN")
Else
        If $var = "READY" Then MsgBox(16, "", "如果有光盘,它就ready了")
EndIf
 楼主| 发表于 2009-3-23 16:51:53 | 显示全部楼层

回复 4# 顽固不化 的帖子

多谢 顽固 的帮助!
原来是   ($DRIVE[1]&"\")   这一步写错了。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-19 15:46 , Processed in 0.079658 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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