aiki
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: ;ThinApp process killer au3 by aiki ;v.1.7 ; Пользовательские установки $mainPath = "C:\Canvas.14\" ;in virtual filesystem $mainExe = "Canvas14.exe" $extraExe1 = "CanvasInTouch2.exe" $extraExe2 = "PluginGateIO.exe" $extraExe3 = "" $extraExe4 = "" $extraExe5 = "" $waitTime = 30000; по умолчанию слежение за процессами начинается через 30 сек $checkTime = 2000; интервал сопоставления активных окошек и процессов - 2 сек #AutoIt3Wrapper_Icon=Canvas14.ico #AutoIt3Wrapper_Res_Comment=Canvas 14 #AutoIt3Wrapper_Res_Description=Canvas 14 #AutoIt3Wrapper_Res_Fileversion=14.1.1618.0 #AutoIt3Wrapper_Res_LegalCopyright= ACD Systems of America Inc. © ; Все что ниже можно не трогать #AutoIt3Wrapper_Compression=4 #NoTrayIcon Run ($mainPath & $mainExe) ; запускаем основной процесс Sleep($waitTime) $aWins = 1 ;устанавливаем список подозрительности в начальное состояние While 1 Sleep($checkTime) $aWins += 1 ; $wins = WinList() ; создаем список окон $proc = ProcessExists($mainExe) ; получаем Pid процесса If $proc > 0 Then $aWins += 1 ; For $i = 1 to $wins[0][0] ; пробегаем по списку If $wins[$i][0] <> "" AND _IsWinVisible($wins[$i][1]) Then ; окошко существует и видимо If WinGetProcess($wins[$i][0]) = $proc Then ; Pid окошка совпадает c Pid процесса $aWins = 1 ; окошко найдено - сбрасываем счетчик подозрительности EndIf EndIf Next EndIf If $aWins > 10 Then KillPr($mainExe) KillPr($extraExe1) KillPr($extraExe2) KillPr($extraExe3) KillPr($extraExe4) KillPr($extraExe5) ExitLoop EndIf WEnd Func KillPr($PrNm) If StringLen ($PrNm) > 4 Then $i = 0 $j = 0 While $i < 17 $i = $i + 1 $j = $j + 1 If ProcessExists($PrNm) Then If $j > 0 Then ProcessClose($PrNm) ;MsgBox(0,"Предупреждение", $PrNm) Sleep(100) $j = -4 EndIf Else ExitLoop EndIf Sleep(100) WEnd EndIf EndFunc Func _IsWinVisible($handle) ;Is Window Visible If BitAnd( WinGetState($handle), 2 ) Then Return 1 Else Return 0 EndIf EndFunc |
| Всего записей: 673 | Зарегистр. 25-12-2002 | Отправлено: 19:47 04-10-2013 | Исправлено: aiki, 22:46 04-10-2013 |
|