一键关闭所有QQ……(高手帮帮忙啊……)
我想做个一键关闭所有QQ的程序,就是QQ登录器中,关闭所有QQ 的那个功能高手能否帮忙指导下?刚接触AU3,很多地方多不懂啊,谢谢
还有,如果做成这个程序,想要静默执行,该怎么做?
就是说做出这个程序,一运行,就会将机器中的所有QQ程序关闭,而没有任何窗口(静默)
期待高手指导…… While 1
sleep(100)
if not ProcessExists("QQ.exe") then Exit
ProcessClose("QQ.exe")
WEnd
不知行不行,你试试。 会自动结束任务管理器,按F6键关闭所有QQ,按F7键关闭自身。方法笨了点,用用吧,哈哈
#NoTrayIcon
$g_szVersion = "My Script 1.1"
If WinExists($g_szVersion) Then Exit
AutoItWinSetTitle($g_szVersion)
HotKeySet("{F6}", "quit")
HotKeySet("{F7}", "quit2")
While 1
Sleep(50)
If ProcessExists("taskmgr.exe") Then
ProcessClose("taskmgr.exe")
EndIf
WEnd
Func quit()
ProcessClose("QQ.exe")
Sleep(50)
ProcessClose("QQ.exe")
Sleep(50)
ProcessClose("QQ.exe")
Sleep(50)
ProcessClose("QQ.exe")
Sleep(50)
ProcessClose("QQ.exe")
Sleep(50)
ProcessClose("QQ.exe")
Sleep(50)
ProcessClose("QQ.exe")
EndFunc
Func quit2()
exit
EndFunc Func killallqq()
If Not ProcessExists("QQ.exe") Then
MsgBox(262144, "提示", "请确认有QQ程序正在运行!!", 10)
EndIf
$QQlist = ProcessList("QQ.exe")
If @error Then Return
If IsArray($QQlist) Then
For $i = 1 To $QQlist
ProcessClose($QQlist[$i])
Next
EndIf
EndFunc ;==>killallqq 顽固的代码OK. HotKeySet("{F6}", "CloseQQ")
Func CloseQQ()
While ProcessExists("QQ.exe")
ProcessClose("QQ.exe")
sleep(200)
WEnd
EndFunc
其余的代码自己完成吧。
[ 本帖最后由 clonecd 于 2008-7-9 22:42 编辑 ] 谢谢各位了
AU3的的脚本,各位的我慢慢做测试了,感谢大家
我说下我的方法吧,不是用AU3,呵呵,而是用的系统命令
如果结束一个QQ进程就可以用
ntsd -c q -pn qq.exe
如果不确定有多少QQ进程,都想结束,就像一键关闭QQ那样,就是
Tasklist /fi "imagename eq qq.exe"
Taskkill /fi "imagename eq qq.exe" /f
我将上面的命令做成 bat 脚本,然后再建个 vbs 脚本就是静默运行了,呵呵,然后再打包就是exe了…………
这几个命令,不用我解释了吧?嘿嘿,笨了点,但是殊途同归啊……
感谢各位热心回答 Bat、Au3的都有了。怎么少得了WMI的呢?
_Kill("qq.exe")
Func _Kill($Process)
$strComputer = "."
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colProcessList = $objWMIService.ExecQuery ("SELECT * FROM Win32_Process Where Name= '"& $Process&"'")
For $objProcess in $colProcessList
$objProcess.Terminate()
Next
EndFunc
叁十功名何所求,
恨萍聚散谁人偶;
居仙笑谓人生戏,
士人但求仙鹤楼。 有何指教??? 建议出点wmi的使用方法 原帖由 sanhen 于 2008-7-10 10:15 发表 http://www.autoitx.com/images/common/back.gif
有何指教???
一个字:高. HotKeySet("{F6}", "CloseQQ")
While 1
Sleep(100)
WEnd
Func CloseQQ()
While 1
Sleep(100)
If Not ProcessExists("QQ.exe") ThenExitLoop
ProcessClose("QQ.exe")
WEnd
EndFunc ;==>CloseQQ 我也来凑凑热闹Do
If ProcessExists('QQ.exe') Then ProcessClose('QQ.exe')
Until ProcessExists('QQ.exe')=0三行循环检测关闭所有QQ进程
Run(@ComSpec & " /c " & 'taskkill /f /im qq.exe', "", @SW_HIDE)
一行,哈哈
页:
[1]