Цитата iDrug:
Я имел ввиду чтобы самого окна скрипта - не было. Проверил ваш скрипт - и там его нет, чего я и хотел. »
|
Если у Вас исполняющим ядром Windows Script Host по умолчанию является «wscript.exe» (таким оно является после установки, и у обычных пользователей, как правило, не меняется) — тогда окна консоли не будет:
читать дальше »
Цитата wscript.exe /?:
Использование: WScript имя_сценария.расширение [параметры...] [аргументы...]
Параметры:
…
//E:ядро Использование указанного ядра для выполнения сценария
//H:CScript Стандартный сервер сценариев заменяется на CScript.exe
//H:WScript Стандартный сервер сценариев заменяется на WScript.exe (по умолчанию)
…
|
Цитата iDrug:
Скрипт работает только если исполняемые процессы лежат в папке windows.»
|
Не совсем так. Метод «.Create()» класса «Win32_Process», если не указан путь, ищет исполняемые файлы в текущем каталоге, затем в каталогах, перечисленных в переменной окружения PATH:
читать дальше »
Код:

Option Explicit
Dim lngProcessID1, lngProcessID2
With GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
With .Get("Win32_Process")
.Create "c:\\program files\\far\\far.exe", "c:\\temp", Nothing, lngProcessID1
.Create "winrar.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
В этом примере «Far Manager» запускается с использованием полного пути (ещё раз обратите внимание на использование двух слэшэй в качестве разделителей), а Winrar.exe — без указания, поскольку в PATH присутствует путь к каталогу Winrar'а:
Цитата path:
PATH=C:\WINDOWS\SYSTEM32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\WBEM; … C:\PROGRAM FILES\WINRAR; …
|