afan 发表于 2010-7-10 03:32:49

翻了下以前的旧帖,http://www.autoitx.com/forum.php?mod=redirect&goto=findpost&ptid=13550&pid=144402&fromuid=7644923
改了下~$title = 'C:\Program Files\aaa'
_Winkill($title, 'Windows ')

ShellExecute($title)
If $__Exists Then MsgBox(262144 + 64, 'ok文件夹存在', '文件夹存在')

Func _Winkill($title, $text)
        Global $__title = $title, $__text = $text, $__Exists = True
        Global $__Timer = DllCallbackRegister('_Timer', 'int', 'hwnd;uint;uint;dword')
        Global $__TimerDLL = DllCall('user32.dll', 'uint', 'SetTimer', 'hwnd', 0, 'uint', _
                        0, 'int', 100, 'ptr', DllCallbackGetPtr($__Timer))
EndFunc   ;==>_Winkill

Func _Timer($hwnd, $uiMsg, $idEvent, $dwTime)
        If $idEvent = $__TimerDLL Then
                If WinExists($__title, $__text) Then
                        DllCallbackFree($__Timer)
                        $__Exists = False
                        WinClose($__title, $__text)
                        MsgBox(262144 + 48, '文件夹不存在', $title & ' 不存在 ')
                ElseIf WinExists('ok文件夹存在') Then
                        DllCallbackFree($__Timer)
                EndIf
        EndIf
EndFunc   ;==>_Timer

lanfengc 发表于 2010-7-10 10:15:06

回复 60# lynfr8


    彼此彼此。 你也是夜猫子哈。睡到半夜,突然想起个问题的解决办法,爬起来打开电脑写代码。 然后写完了回去继续睡, 现在才起来。。{:face (394):}

jinyue115 发表于 2010-7-10 10:20:05

回复 59# lanfengc


    佩服阁下!!!
高唱:就这样被你征服!。。。。。

jinyue115 发表于 2010-7-10 10:24:10

回复 61# afan


    从一开始 就知道 你肯定可以搞定
牛人 感谢您的无私奉献
感谢所有人
我觉得这一晚上 我学到很多东西 谢谢

ransally 发表于 2010-7-12 09:06:15

回复 40# lchl0588


    恩,是的,如果不是纠结于问题,afan的代码是很完美的代码,谢谢你啊,一直在帮忙

ransally 发表于 2010-7-12 09:06:40

回复 36# lchl0588


    我测试了,不行,我很迷惑

ransally 发表于 2010-7-12 09:31:29

回复 62# lanfengc


    这种态度值得佩服

ransally 发表于 2010-7-12 09:35:05

周一回来一看帖子,就震住了,没话说,真的很佩服,小问题,学到很多东西,谢谢大家{:face (209):}

guowenfu 发表于 2010-7-12 10:33:27

不瞭解,爲什麽做這樣的判斷。

zcx880517 发表于 2010-7-12 10:51:54

回复 61# afan


    A版太强大,,神人。

wsfda 发表于 2010-7-13 18:04:48

窗口的标题你获取的还是,自己看着输入的,窗口的标题可能是aa并不是C:\Program Files\aa
这个错误我犯过,而且有不是一个系统打开文件夹标题会不一样,你可以试试

wsfda 发表于 2010-7-13 18:07:12

回复 9# pusofalse

ShellExecute("aa")
sleep(10000)
IfWinExists("aa","") Then
    WinClose("aa","")
      MsgBox(48,"","文件不存在")
Else
               
      MsgBox(48,"","文件存在")
EndIf

我这里现在如果打开aa文件,则窗口的标题就是aa

ransally 发表于 2010-7-14 08:54:42

回复 71# wsfda


   窗口标题是获取的,问题是出在提示窗口一出来,程序就停止了

wsfda 发表于 2010-7-14 13:31:22

现在问题解决了吗?真的很希望能帮到你.....

ransally 发表于 2010-7-14 17:23:02

回复 74# wsfda


    呵呵,解决了,谢谢你,{:face (117):}
页: 1 2 3 4 [5]
查看完整版本: 简单程序已修正,问题原因看回复【已解决】谢谢大家!