Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Поместите следующий код:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim strPath2Process
Dim objSWbemObjectEx
Dim lngProcessID


With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
	strPath2Process = WScript.CreateObject("WScript.Shell").CurrentDirectory
	
	If .Get("Win32_Process").Create(strPath2Process & "\Paint it!.exe", strPath2Process, Nothing, lngProcessID) = 0 Then
		.ExecNotificationQuery( _
			"SELECT * FROM __InstanceDeletionEvent WITHIN 1 " & _
			"WHERE TargetInstance ISA 'Win32_Process' AND TargetInstance.Handle = '" & CStr(lngProcessID) & "'" _
		).NextEvent
		
		For Each objSWbemObjectEx In .ExecQuery("SELECT * FROM Win32_Process WHERE ParentProcessID = '" & CStr(lngProcessID) & "'")
			If objSWbemObjectEx.Terminate() <> 0 Then
				WScript.Echo "Can't terminate child process [" & objSWbemObjectEx.Name & "]."
			End If
		Next
	Else
		WScript.Echo "Can't execute [" & strPath2Process & "\Paint it!.exe]."
		WScript.Quit 1
	End If
End With

WScript.Quit 0

в файл с расширением .vbs в папку с исполняемым файлом «Paint it!.exe». Запустите его двойным щелчком из Проводника. Данный скрипт должен запустить процесс «Paint it!.exe», отследить его завершение, закрыть все дочерние процессы, порождённые именно этим процессом «Paint it!.exe» и завершить свою работу. Пробуйте.

Отправлено: 21:03, 13-07-2014 | #5