Не пойму почему у меня не выходит подставив в ваш код путь для другой программы... Я понимаю что это детский сад, но не выходит, чтобы процесс мониторился. Что нужно менять, чтобы любой процесс можно было мониторить и запускать если он "сдох по неведомым причинам"?
Код:
Option Explicit
Const SW_SHOWMINNOACTIVE = 7
Dim objSWbemObjectEx
Dim lngProcessID
With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
Set objSWbemObjectEx = .Get("Win32_ProcessStartup").SpawnInstance_
objSWbemObjectEx.ShowWindow = SW_SHOWMINNOACTIVE
Do
If .Get("Win32_Process").Create( _
"""C:\Windows\System32\notepad.exe""", Null, objSWbemObjectEx, lngProcessID _
) = 0 Then
.ExecNotificationQuery( _
"SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE " & _
"TargetInstance ISA 'Win32_Process' AND " & _
"TargetInstance.ProcessID = '" & CStr(lngProcessID) & "'").NextEvent
Else
' Не удалось запустить процесс
Exit Do
End If
Loop
Set objSWbemObjectEx = Nothing
End With
WScript.Quit 0
Блокнот мне неважен, пробовал на разных програмах, но не вышло сделать программу(процесс) псевдонеубиваемым.