Вопрос

Я использую VBScript для запуска приложения на моем Win Server 2003, и я хочу, чтобы он выключен после установленного количества времени. Что-то вдоль линий:

Set WshShell = WScript.CreateObject("WScript.Shell")
Set OExe = WshShell.exec("somecommand.exe")
WScript.Sleep 1000000
OExe.Terminate
<Insert LogOff code>
Это было полезно?

Решение

Что-то типа

WshShell.Run "C:\windows\system32\shutdown.exe /l", 0, false

должен сделать трюк

Другие советы

Wscript.Sleep(100000)  
SET wshell = Wscript.CreateObject("Wscript.Shell")  
wshell.exec("shutdown.exe -L -F")  

Просто проверено это на коробке W7, кажется, работает хорошо.

Пример с использованием WMI:

Set oSystems = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")
For Each oSystem in oSystems
   'LOGOFF   = 0
   'SHUTDOWN = 1
   'REBOOT   = 2
   'FORCE    = 4
   'POWEROFF = 8
   oSystem.Win32Shutdown 0
Next
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top