Цитата novi:
а в нижней панели "панель задач", их нету »
|
Ух ты! Это как так получилось?
Давайте уточним, выложенный мною скрипт (с Вашими путями, разумеется) Вы запускали обычным двойным щелчком из Проводника? Или как-то иначе, например, из-под Диспетчера задач?
Цитата novi:
т.е. они я так понимаю запущены в фоне. »
|
Да нет, самый обычный запуск.
Не вижу

.
Цитата novi:
2 вариант проверил: с начало запустил все свои программы указанные в скрипте, они нормально отображаются в диспетчере задач. Запускаю скрипт, он ещё раз их запускает, и те которые запустил именно скрипт их не видно. А в диспетчере задач их стало в два раза больше. Т.е. в диспетчере задач следующая картина: по два процесса каждой программы. »
|
Всё верно.
Цитата novi:
Разрешено только для внутренней сети. К хосту имеют доступ несколько человек, »
|
Ясно.
Цитата novi:
в идеале хотелось бы получить именно минимизацию. »
|
Пробуйте:
читать дальше »
Код:

Option Explicit
Const SW_SHOWMINIMIZED = 2
Const SW_SHOWMINNOACTIVE = 7
Dim arrProcesses
Dim strComputer
Dim objSWbemLocator
Dim objSWbemServicesEx
Dim collSWbemObjectSet
Dim objSWbemObjectEx
Dim elem
Dim objFSO
Dim lngProcessID
arrProcesses = Array("C:\WINDOWS\system32\notepad.exe", "C:\WINDOWS\system32\calc.exe", "C:\WINDOWS\system32\mspaint.exe")
strComputer = "."
Set objSWbemLocator = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServicesEx = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
Set collSWbemObjectSet = objSWbemServicesEx.ExecNotificationQuery("SELECT * From __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA 'Win32_Process'")
Set objSWbemObjectEx = objSWbemServicesEx.Get("Win32_ProcessStartup").SpawnInstance_
objSWbemObjectEx.ShowWindow = SW_SHOWMINNOACTIVE
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
' Первоначальный запуск процессов
For Each elem In arrProcesses
If objSWbemServicesEx.Get("Win32_Process").Create(elem, objFSO.GetParentFolderName(elem), objSWbemObjectEx, lngProcessID) = 0 Then
'WScript.Echo Now() & vbTab & "Process [" & elem & "] successfully started."
Else
WScript.Echo Now() & vbTab & "Can't create process [" & elem & "]."
End If
Next
' Слежение за теми же процессами
Do
'Set objSWbemObjectEx = collSWbemObjectSet.NextEvent.TargetInstance
With collSWbemObjectSet.NextEvent.TargetInstance
For Each elem In arrProcesses
If .Name = objFSO.GetFileName(elem) Then
With WScript.CreateObject("CDO.Message")
.From = "monitor1@fabrikam.com"
.To = "admin1@fabrikam.com"
.Subject = "Atl-dc-01 down"
If objSWbemServicesEx.Get("Win32_Process").Create(elem, objFSO.GetParentFolderName(elem), objSWbemObjectEx, lngProcessID) = 0 Then
.Textbody = Now() & vbTab & "Process [" & elem & "] successfully started."
Else
.Textbody = Now() & vbTab & "Can't create process [" & elem & "]."
End If
.Send
End With
Exit For
End If
Next
End With
Loop
Set objFSO = Nothing
Set objSWbemObjectEx = Nothing
Set collSWbemObjectSet = Nothing
Set objSWbemServicesEx = Nothing
Set objSWbemLocator = Nothing
WScript.Quit 0