无法关闭某窗口标题包含有"桔子浏览器"的程序窗口[已解决]
本帖最后由 m765555 于 2014-4-2 21:47 编辑请教各位兄弟一下,其它就是一个桔子浏览器的软件,本人想通过此软件的方法来达到监视窗口标题如果含有某字眼的垃圾程序时,自动关闭不需要的程序,以达到阻止安装的目的.但这个桔子浏览器我怎么弄也没办法关闭它,请看代码有什么问题.#include <WinAPI.au3>
While 1
$var = WinList()
For $i = 1 To $var
; 仅显示带标题的可见窗口
If $var[$i] <> "" And IsVisible($var[$i]) Then
If StringInStr($var[$i], "桔子浏览器") Then
;MsgBox(0, 0, $var[$i])
WinClose($var[$i])
;以下几种方法都无法关闭窗口标题中包含有'桔子浏览器'的程序窗口>>>>>>>>>
;Local $myhand=WinGetHandle($var[$i])
;MsgBox(0, 0, $myhand) 句柄正确啊
;WinActivate($var[$i])可以激活窗口啊
;WinClose($myhand,"") 1.用句柄也无法关闭窗口
;WinClose($var[$i]) 2.此方法也无法关闭窗口
;WinKill($myhand) 3.此方法也无法关闭窗口
;以上几种方法都无法关闭窗口标题中包含有'桔子浏览器'的程序窗口>>>>>>>>>
EndIf
EndIf
Next
WEnd
Func IsVisible($handle)
If BitAND(WinGetState($handle), 2) Then
Return 1
Else
Return 0
EndIf
EndFunc ;==>IsVisible 这里是此软件的附件,为了方便上传,请下载后,把后缀由pdf改为exe就可以运行安装界面了.
试下While 1
$var = WinList()
For $i = 1 To $var
If $var[$i] <> '' And BitAND(WinGetState($var[$i]), 2) Then
If StringInStr($var[$i], '桔子浏览器') Then ProcessClose(WinGetProcess($var[$i]))
EndIf
Next
WEnd 回复 2# afan
呵呵,不错,代码高效,THANK YOU ! 回复 3# m765555
实际应用需在循环中插入一行如 Sleep(100),否则会导致CPU占用超高。 回复 2# afan
斑竹,你这个循环用了后面怎么退出程序:
Run('2345_k123456788888_desk.exe')
While 1
$var = WinList()
For $i = 1 To $var
If $var[$i] <> '' And BitAND(WinGetState($var[$i]), 2) Then
If StringInStr($var[$i], '2345网址导航桌面版') Then ProcessClose(WinGetProcess($var[$i]))
EndIf
Next
WEnd
回复 5# bossfly
没添加手动退出代码,可以直接点击托盘图标退出 都是 高手呀! 学习了,不错啊
页:
[1]