ransally
发表于 2010-7-9 16:47:48
回复 14# lchl0588
不是这个原因,你的代码失败了
ransally
发表于 2010-7-9 16:48:36
回复 13# afan
多线程我不懂.........只知道C++多线程,这个还不知道,很难??
lchl0588
发表于 2010-7-9 16:59:10
回复 16# ransally
3mile
发表于 2010-7-9 17:03:58
为何要WinWait呢?读@error不就可以判断吗?ShellExecute("C:\Program Files\aa")
If @error Then
Send("{enter}")
MsgBox(48,"","文件不存在")
Else
MsgBox(48,"","文件存在")
EndIf
ransally
发表于 2010-7-9 17:06:38
回复 18# lchl0588
我试了好多遍,在我这失败,唉,我们公司的机子还传不了图......
ransally
发表于 2010-7-9 17:08:14
回复 19# 3mile
提示窗口要手动关,才可以看到“文件不存在”窗口
lchl0588
发表于 2010-7-9 17:09:49
本帖最后由 lchl0588 于 2010-7-9 17:26 编辑
回复 19# 3mile
汗,还是P版说的对,窗口与脚本运行时间不一致导致!!!
我们聊来聊去,不如直接看下帮助中的:WinExists函数的实例!!!
回复 23# ransally
点之参见这里
回复lchl0588
汗....你的那个程序,我运行了五遍不止,真的不能成功的关掉那个提示窗口
ransally 发表于 2010-7-9 17:23 http://www.autoitx.com/images/common/back.gifShellExecute("d:\aa")
WinWaitActive("aa")
IfWinExists("aa") Then
Send("{enter}")
MsgBox(48,"1","文件不存在",5)
Else
MsgBox(48,"2","文件存在",5)
EndIf这样呢?
ransally
发表于 2010-7-9 17:14:48
回复 22# lchl0588
我加入延迟Sleep()也是不行,主要是那个提示窗口关不掉,如果你成功了,
源码给我看下,谢啦
ransally
发表于 2010-7-9 17:23:07
回复 22# lchl0588
汗....你的那个程序,我运行了五遍不止,真的不能成功的关掉那个提示窗口
3mile
发表于 2010-7-9 17:23:18
如果只是纠结这个问题的话。
AFAN的代码完全可以满足你的要求。
afan
发表于 2010-7-9 17:26:56
跳出消息框后,程序就暂停了,也就不会继续执行后面的 Send()... , 除非用多线程或多进程监视这个可能弹出的窗口,再做处理
ransally
发表于 2010-7-9 17:30:00
回复 25# 3mile
就是想知道用原来的方法,怎么就不成了?比较纠结这个,嘿嘿
ransally
发表于 2010-7-9 17:31:34
回复 26# afan
对,是的,提示窗口出来后,脚本是停止的,我加个执行脚本也是不行
看来要看下多线程是怎么回事了。
lchl0588
发表于 2010-7-9 17:40:15
本帖最后由 lchl0588 于 2010-7-9 17:47 编辑
$dir = "C:\Program Files\aa"
If FileExists($dir) Then
ShellExecute($dir)
Else
MsgBox(48, '错误', '指定文件夹:"' & $dir & '"不存在')
EndIf和这段代码运行结果有什么不同?
这是我在LZ的基础上改的!!ShellExecute("C:\Program Files\aa")
WinWaitActive("aa")
IfWinExists("aa") Then
Send("{enter}")
Else
MsgBox(48,"2","文件存在",2)
EndIf要说结果相同,真不知道是什么测试的,如果在A版中,再加上一行代码,如下:$dir = "C:\Program Files\aa"
If FileExists($dir) Then
ShellExecute($dir)
MsgBox(48,"2","文件存在")
Else
MsgBox(48, '错误', '指定文件夹:"' & $dir & '"不存在')
EndIf
afan
发表于 2010-7-9 17:45:29
本帖最后由 afan 于 2010-7-9 17:53 编辑
和这段代码运行结果有什么不同?
这是我在LZ的基础上改的!!要说结果相同,但有一点不同,我测试结果是 ...
lchl0588 发表于 2010-7-9 17:40 http://www.autoitx.com/images/common/back.gif
WinWaitActive... 没有aa文件夹就只有wait下去了~ 你删掉 aa 文件夹再测试下~