解决方法
这是一个批处理脚本,它将
Windows XP,Vista或Windows 7计算机重新启动到安全模式.
Echo Off REM Check Windows Version ver | findstr /i "5\.0\." > nul IF %ERRORLEVEL% EQU 0 goto ver_nt5x ver | findstr /i "5\.1\." > nul IF %ERRORLEVEL% EQU 0 goto ver_nt5x ver | findstr /i "5\.2\." > nul IF %ERRORLEVEL% EQU 0 goto ver_nt5x ver | findstr /i "6\.0\." > nul IF %ERRORLEVEL% EQU 0 goto ver_nt6x ver | findstr /i "6\.1\." > nul IF %ERRORLEVEL% EQU 0 goto ver_nt6x goto warn_and_exit :ver_nt5x :Run Windows 2000/XP specific commands here bootcfg /raw /a /safeboot:network /id 1 REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*UndoSB" /t REG_SZ /d "bootcfg /raw /fastdetect /id 1" SHUTDOWN -r -f -t 07 goto end :ver_nt6x :Run Windows Vista/7 specific commands here bcdedit /set {current} safeboot network REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*UndoSB" /t REG_SZ /d "bcdedit /deletevalue {current} safeboot" SHUTDOWN -r -f -t 07 goto end Echo On :warn_and_exit echo Machine OS cannot be determined. :end
此脚本最初由ChunkDog发布于:https://forum.ultravnc.net/viewtopic.php?f=50&t=29663
我修改了它,并添加了一个vbscript,询问用户是否要重新启动到安全模式,并根据用户输入调用批处理文件.
Dim oShell,returnCode Set objShell = CreateObject("Shell.Application") Set oShell = WScript.CreateObject("WScript.Shell") returnCode = oShell.Popup("Do you want to restart your computer in Safe Mode","Restart In Safe Mode",4 + 48 + 256) Select Case returnCode case 6,-1 objShell.ShellExecute "tryout.bat","","runas",0 case 7 oShell.popup "Operation Canceled",0 + 64 + 0 End Select
这尚未在Windows 8上进行过测试.