vbscript를 사용하여 Windows 상자를 강제로 다시 시작하는 방법은 무엇입니까?
문제
Windows가 재부팅하도록 강요하는 방법을 찾으려고 노력하고 있으며 문제가 발생하고 있습니다. 난 노력 했어
Set OpSysSet = GetObject("winmgmts:{authenticationlevel=Pkt," _
& "(Shutdown)}").ExecQuery("select * from Win32_OperatingSystem where "_
& "Primary=true")
for each OpSys in OpSysSet
retVal = OpSys.Reboot()
next
나는 또한 사용해 보았다 shutdown -f -r
명령, 그리고 두 경우 모두 응답이 없으며 다시 시도하면 "시스템이 종료되면 작업이 완료 될 수 없다"라는 오류가 발생합니다. 여전히 새로운 프로그램을 시작하고 shutdown -a
동일한 오류가 발생합니다. 스크립트를 사용하여 Windows를 재부팅하도록하는 방법은 무엇입니까?
해결책
교체 시도 :
retVal = OpSys.Reboot()
와 함께:
retVal = OpSys.Win32Shutdown(6)
다른 팁
글쎄, 이것은 vbscript를 사용합니다. 그러나 진실로 당신이하려는 것과 동일한 명령 줄 종료를 호출합니다. 나는 그것을 테스트했고 그것은 작동합니다.
Dim oShell
Set oShell = CreateObject("WScript.Shell")
'restart, wait 5 seconds, force running apps to close
oShell.Run "%comspec% /c shutdown /r /t 5 /f", , TRUE
어떤 OS에 반대하고 있습니까? 이 테스트는 XP에 대한 것입니다. 서버 OS에 종료 코드가 필요한지 궁금합니다 ...
SYSINTERNALS NOW MICROSOFT에서 PSSHUTDOWN 명령 줄 유틸리티를 사용해 볼 수도 있습니다.http://technet.microsoft.com/en-us/sysinternals/bb897541.aspx
'*********************************************************
Option Explicit
Dim objShell
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "C:\WINDOWS\system32\shutdown.exe -r -t 0"
'*********************************************************
이 작은 스크립트는 0 초 후에 로컬 컴퓨터를 다시 시작합니다.
Set Reset= WScript.CreateObject ("WScript.Shell")
Reset.run "shutdown -r -t 00", 0, True
또는..
Shell "shutdown -r -t 00" ' for restart
Shell "shutdown -s -t 00" ' for Shutdown
Shell "shutdown -l -t 00" ' for log off
Shell "shutdown -a -t 00" ' for abort
제휴하지 않습니다 StackOverflow