Имя пользователя:
Пароль:
 

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

Ветеран


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

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


iDrug, практически любой. Вот пример на VBScript на основе WMI:

читать дальше »
Sample.vbs
Код: Выделить весь код
Option Explicit

Dim lngProcessID1, lngProcessID2

With GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
	With .Get("Win32_Process")
		.Create "notepad.exe", "c:\\temp", Nothing, lngProcessID1
		.Create "calc.exe", "c:\\windows", Nothing, lngProcessID2
	End With
	
	.ExecNotificationQuery( _
		"SELECT * FROM __InstanceDeletionEvent WITHIN 1 " & _
		"WHERE TargetInstance ISA 'Win32_Process' AND " & _
		"TargetInstance.ProcessID = '" & CStr(lngProcessID1) & "'").NextEvent
	
	On Error Resume Next
	.Get("Win32_Process.Handle='" & CStr(lngProcessID2) & "'").Terminate
	On Error Goto 0
End With

WScript.Quit 0
«On Error Resume Next/On Error Goto 0» нужно на случай, если второй процесс будет закрыт ранее, нежели будет закрыт первый.

Насчёт чёрных окон cmd.exe относительно самих запускаемых процессов: сие уже зависит от типа процесса, консольный он или GUI. Впрочем, окно процесса что того, что другого типа можно сделать скрытым при начале исполнения.
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:15, 12-10-2009 | #2