请教:如何 遍历多个指定进程 并 结束它 。
本帖最后由 qq83769881 于 2010-1-20 14:27 编辑请教:如何 遍历多个指定进程 并 结束它 。谢谢
比如有1.exe2.exe 3.exe 4.exe 如果你用记事本每行记录一个exe进程名的话,下面的例子应该能帮到你。
$file = FileOpen("test.txt", 0)
; 检查打开的文件是否可读
If $file = -1 Then
MsgBox(0, "错误", "不能打开文件.")
Exit
EndIf
; 每次读取一行文本,直到文件结束.
While 1
$line = FileReadLine($file)
If @error = -1 Then ExitLoop
If ProcessExists($line) Then ProcessClose ($line)
Wend
FileClose($file) 关键是看你【多个指定进程】是什么方式得到的,
然后用个循环,加一句
If ProcessExists($进程) Then ProcessClose ($进程)
就能搞定了 谢谢楼上两位。:face (23): 如果不以TXT 而是 我自己指定几个固定的进程 比如1.EXE 2.EXE 3.EXE该 怎么写呢,(有时会同时有几个1.EXE,特别是当程序出错的时候 )我比较笨 脑子不太好使 请帮帮忙 本帖最后由 afan 于 2010-1-19 15:42 编辑
Dim $exe =
$PList = ProcessList()
For $i = 1 To $PList
For $x = 1 To $exe
If $PList[$i] = $exe[$x] Then ProcessClose($PList[$i])
Next
Next 谢谢楼上的 谢谢楼上两位。
qq83769881 发表于 2010-1-19 11:46 http://www.autoitx.com/images/common/back.gif
那是一位。。
afan 发表于 2010-1-19 12:36 http://www.autoitx.com/images/common/back.gif
这个可以解决有多个重名进程的问题。。。 :face (7): D:\Program Files\auit3\Examples\Helpfile\MsgBox.au3(5,63) : 错误: 表达式错误
If $PList[$i] = $exe[$x] Then ProcessClose $PList
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Program Files\auit3\Examples\Helpfile\MsgBox.au3(5,76) : 错误: 表达式错误
If $PList[$i] = $exe[$x] Then ProcessClose $PList[$i]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Program Files\auit3\Examples\Helpfile\MsgBox.au3(5,76) : ERROR: multi-line 'If' missing 'Then'.
If $PList[$i] = $exe[$x] Then ProcessClose $PList[$i]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Program Files\auit3\Examples\Helpfile\MsgBox.au3 - 3 error(s), 0 warning(s)
这是咋回事呢 回复 11# qq83769881
你的源码是? 就是复制的你的,然后把它换成了我要结束的名字:face (38): 回复 13# qq83769881
我的错,忘了括号…… - - ||
改了下 感谢 各位 我的小工作东拼西拼 完成了三分之一了,多谢各位。
页:
[1]
2