Как сделать цикл VBScript незаметным?
0 Shrayus Masanam [2018-10-20 02:22:00]
Поэтому у меня есть файл VBScript (.vbs), который должен убивать mspaint.exe каждые 3 секунды. Вот код:
Dim oShell : Set oShell = CreateObject("WScript.Shell")
do
WScript.Sleep 3000
' Kill paint '
oShell.Run "taskkill /im mspaint.exe", , True
loop
Он работает, однако каждые 3 секунды окно командной строки (или что-то в этом роде) становится активным окном около полутора секунд, а затем закрывается. Это очень раздражает, поскольку я хотел бы, чтобы это запустилось в фоновом режиме, чтобы заблокировать определенную программу. Я не могу этого сделать, поскольку это мешает регулярному использованию компьютера. Есть идеи?
loops block background vbscript
1 ответ
0 Решение CatCat [2018-10-20 03:14:00]
Программисты не запускают пользовательские команды.
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Do
Set colItems = objWMIService.ExecQuery("Select * From Win32_Process")
For Each objItem in colItems
If LCase(objItem.name) = "mspaint.exe" then
objItem.terminate
End If
Next
WScript.Sleep 3000
Loop