擦除 PC 后,简单的关机脚本无法正常运行
Simple shutdown script does not function properly after PC wipe
我有一个简单的 VB 脚本,可以让我输入我希望我的 PC 自行关闭之前的分钟数,然后它会自动关闭。效果很好。在我擦除我的 PC 后,脚本不再按预期运行,而是在我输入关机前的分钟数后显示空白 cmd window,并再次显示输入框(询问关机前的分钟数)。
关于为什么它不能正常工作,以及为什么它以前能工作但现在不能工作,有什么想法吗?我是否需要来自 Microsoft 的某个软件包,也许我没有重新安装?
代码:
Dim a
Dim oShell
a=inputbox("After how many minutes would you like to shut down your PC? Enter cancel to cancel a previous shutdown")
Set oShell = WScript.CreateObject ("WScript.Shell")
if a = "cancel" then
oShell.run "cmd.exe /c shutdown /a"
elseif a = "" then
MsgBox"Please enter after how many minutes you would like to turn off this PC",0+16,"Enter a number"
elseif a = "0" then
b=msgbox("Are you sure you want to shut down this PC immediately?",4+32,"Shut down immediately?")
if b = "6" then
oShell.run "cmd.exe /c shutdown /s /f"
end if
else
oShell.run "cmd.exe /c shutdown /s /t " & (a * 60)
end if
编辑:运行 其目录中的脚本按预期工作,但是 运行 从快捷方式(就像我一直在做的那样)使用 VB 脚本不起作用并产生上述结果。
编辑:此外,脚本本身不会 运行 在我的桌面上正确显示,但 运行 在我存储脚本的文件夹中没问题。
您将脚本命名为 shutdown.vbs
并 运行 并将工作目录设置为包含脚本的目录。通过 运行ning oShell.Run "cmd.exe /c shutdown ..."
你的脚本有效地调用了它自己。
如果您调用命令 shutdown
(没有路径和扩展名),系统将在 [=14= 中列出的目录中查找具有 %PATHEXT%
中列出的扩展名之一的文件] 环境变量。第一场比赛获胜。
由于在 Windows 上,当前目录在 %PATH%
中排在第一位,因此在 %windir%\system32\shutdown.exe
.
之前找到文件 %CD%\shutdown.vbs
重命名您的 VBScript 或将 cmd.exe /c shutdown
更改为 cmd.exe /c shutdown.exe
,问题就会消失。
我有一个简单的 VB 脚本,可以让我输入我希望我的 PC 自行关闭之前的分钟数,然后它会自动关闭。效果很好。在我擦除我的 PC 后,脚本不再按预期运行,而是在我输入关机前的分钟数后显示空白 cmd window,并再次显示输入框(询问关机前的分钟数)。
关于为什么它不能正常工作,以及为什么它以前能工作但现在不能工作,有什么想法吗?我是否需要来自 Microsoft 的某个软件包,也许我没有重新安装?
代码:
Dim a
Dim oShell
a=inputbox("After how many minutes would you like to shut down your PC? Enter cancel to cancel a previous shutdown")
Set oShell = WScript.CreateObject ("WScript.Shell")
if a = "cancel" then
oShell.run "cmd.exe /c shutdown /a"
elseif a = "" then
MsgBox"Please enter after how many minutes you would like to turn off this PC",0+16,"Enter a number"
elseif a = "0" then
b=msgbox("Are you sure you want to shut down this PC immediately?",4+32,"Shut down immediately?")
if b = "6" then
oShell.run "cmd.exe /c shutdown /s /f"
end if
else
oShell.run "cmd.exe /c shutdown /s /t " & (a * 60)
end if
编辑:运行 其目录中的脚本按预期工作,但是 运行 从快捷方式(就像我一直在做的那样)使用 VB 脚本不起作用并产生上述结果。
编辑:此外,脚本本身不会 运行 在我的桌面上正确显示,但 运行 在我存储脚本的文件夹中没问题。
您将脚本命名为 shutdown.vbs
并 运行 并将工作目录设置为包含脚本的目录。通过 运行ning oShell.Run "cmd.exe /c shutdown ..."
你的脚本有效地调用了它自己。
如果您调用命令 shutdown
(没有路径和扩展名),系统将在 [=14= 中列出的目录中查找具有 %PATHEXT%
中列出的扩展名之一的文件] 环境变量。第一场比赛获胜。
由于在 Windows 上,当前目录在 %PATH%
中排在第一位,因此在 %windir%\system32\shutdown.exe
.
%CD%\shutdown.vbs
重命名您的 VBScript 或将 cmd.exe /c shutdown
更改为 cmd.exe /c shutdown.exe
,问题就会消失。