Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » VMware ThinApp (formerly Thinstall) 3

Модерирует : gyra, Maz

articlebot (28-02-2016 18:11): VMware ThinApp (formerly Thinstall) часть 4  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

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
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » VMware ThinApp (formerly Thinstall) 3
articlebot (28-02-2016 18:11): VMware ThinApp (formerly Thinstall) часть 4


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru