Как вы выходите из VBScript?
Вопрос
Я использую 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
Не связан с StackOverflow