lilachue 发表于 2014-4-21 12:27:29

求助:Windows网络磁盘映射检查

因Windows机器在重启后,网络盘符映射有时候是异常状态,通过鼠标双击后映射会重新连接恢复正常。
故我想做个类似的自动检查流程,想用ShellExecute去打开映射盘符。但我在AutoIT中调用该函数后,虽然弹出连接异常的提示对话框,但该对话框是基于AutoIT的句柄,将AutoIT运行给阻塞了。导致我后面的检查代码无法执行到。

请问各位,AutoIT有没有不阻塞的函数,或者有其他好的处理网络盘符映射检查的方法?

PS:AutoIT有没有交流群,谁能提供一个?

zch11230 发表于 2014-4-21 18:21:16

没太理解楼主的意思 难道楼主双击盘符能够连上 shellexecute就连不上? 没理由啊If Not FileExists("z:\") Then ShellExecute("explorer.exe","z:")

joyran 发表于 2014-4-21 22:20:17

执行cmd命令即可

121044246 发表于 2014-4-22 01:38:00

本帖最后由 121044246 于 2014-4-22 01:40 编辑

回复 1# lilachue Func _CheckDrive()
                $1 = DriveStatus("z:")
                If StringCompare($1, "INVALID") = 0 Then
                        Sleep(100)
                        Return _CheckDrive()
                ElseIf StringCompare($1, "UNKNOWN") = 0 Then
                        Sleep(100)
                        Return _CheckDrive()
                Else
ShellExecute("explorer.exe","Z:")
                EndIf
        EndFunc   ;==>_CheckDrive

lilachue 发表于 2014-4-25 10:36:05

自己解决了,通过模拟点击每个盘符
页: [1]
查看完整版本: 求助:Windows网络磁盘映射检查