Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   убитие процесса (http://forum.oszone.net/showthread.php?t=236516)

Freaxxx 12-06-2012 19:15 1933033

убитие процесса
 
Доброго времени суток, ребята, помогите, необходим скрипт

нужно сделать слебующее:
есть 5 процессов которые не должны запускаться
и 1 процесс, при запуске которого, должен закрыться процесс, и открыться другой файл.

имеется код

PHP код:

///////скрытый режим
#NoTrayIco
Opt("WinTitleMatchMode"4)
Opt("TrayOnEventMode"1)
Opt("TrayMenuMode"3)
Opt("TrayIconHide"1)
/////// запись в автозагрузку  
$sName 'close.exe'
$sRegRun 'HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run'
If RegRead($sRegRun, @ScriptName) = '' Or RegRead($sRegRun, @ScriptName) <> @ScriptFullPath Then
    RegWrite
($sRegRun, @ScriptName"REG_SZ", @ScriptFullPath)
EndIf

//////// проверка процесса (если есть то убиваем, и запускаем файл)
While 1
ProcessClose
(Processwait("good_process.exe"))
/////// запуск файла если есть процесс
Run("file1.exe")
Wend 

подскажите, что /как/куда добавить, чтоб
process1.exe
process2.exe
process3.exe
process4.exe
process5.exe
закрывались при запуске.
в delphi напирмер делал следующим образом:

ставил таймер с интевалом 1 секунда, и код

PHP код:

WinExec(Pchar('taskkill /f /im process.exe'),sw_hide); 

в таком случае, посылалась команда завершения процесса, независимо от того, есть он или нет.

вся программа должна работать в скрытом режиме, заранее благодарю за помощь

Creat0R 12-06-2012 23:59 1933163

Цитата:

Цитата Freaxxx
имеется код »

Это php-код?
Используйте тег code а не php.

Цитата:

Цитата Freaxxx
что /как/куда добавить, чтоб
process1.exe
process2.exe
process3.exe
process4.exe
process5.exe
закрывались при запуске. »

Ну так у вас в коде ведь уже имеется решение, ProcessClose закрывает процесс, в чём проблема?

Iska 13-06-2012 00:29 1933182

Creat0R, ему надо следить одновременно за несколькими процессами. То есть, что-нибудь наподобие «Prevent process from running» со «Script Center»:
читать дальше »
Код:

AutoItSetOption("MustDeclareVars", 1)

Local $aProcesses        = StringSplit("notepad.exe|calc.exe|wordpad.exe", "|")
Local $sProcessName

Local $sComputer        = "."
Local $oSWbemLocator    = ObjCreate("WbemScripting.SWbemLocator")
$oSWbemLocator.Security_.Privileges.AddAsString("SeDebugPrivilege", True)

Local $oSWbemServicesEx  = $oSWbemLocator.ConnectServer($sComputer, "root\cimv2")
Local $oSWbemEventSource = $oSWbemServicesEx.ExecNotificationQuery( _
        "SELECT * FROM __InstanceCreationEvent WITHIN 1 WHERE TargetInstance ISA 'Win32_Process'")

Do
        With $oSWbemEventSource.NextEvent().TargetInstance
                For $sProcessName In $aProcesses
                        If $sProcessName = .Name Then
                                If .Terminate() = 0 Then
                                        ; ConsoleWrite .Name
                                EndIf
                        EndIf
                Next
        EndWith
Until False

$oSWbemEventSource = 0
$oSWbemServicesEx  = 0
$oSWbemLocator    = 0

Exit(0)



Цитата:

Цитата Freaxxx
… и открыться другой файл. »

Что сие означает — я не понял.

AZJIO 13-06-2012 06:21 1933248

Freaxxx, сможешь разобраться в исходнике? Там слежение за процессами оргинизованно, а вместо запуска пишется лог.

Freaxxx 13-06-2012 14:12 1933452

Цитата:

Цитата Iska
Цитата Freaxxx:… и открыться другой файл. »
Что сие означает — я не понял. »

ну это уже реализовано, просто при обнаружении определенного процесса, должен открыться определенный файл

Freaxxx 13-06-2012 14:31 1933469

ладно ребят, спасибо, сделаю дополнительный файл на delphi

Iska 13-06-2012 15:26 1933519

Цитата:

Цитата Freaxxx
просто при обнаружении определенного процесса, должен открыться определенный файл »

Приведите пример.

AZJIO 14-06-2012 04:35 1933847

Freaxxx, ф-я ProcessExists проверяет существование процесса. Только триггер добавить, чтобы после срабатывания функции не вызывать запуск файла повторно.
ShellExecute - запуск файла в ассоциированной программе.


Время: 01:33.

Время: 01:33.
© OSzone.net 2001-