如何关闭-重新启动-通过bat文件注销Windows?
时间:2020-03-06 15:01:35 来源:igfitidea点击:
我一直在使用远程桌面连接进入工作站,但是在执行此操作时无法使用"开始"菜单中的关闭/重新启动功能。
我在下面的答案中添加了一些非常有用的选项。
笔记:
我想确保与此同时也提及一些非常好的答案。
在这里,它们没有特定的顺序。
- 从JosephJoyons强制关闭
- 从VonC执行DLL文件
- 从Dean的Run Box运行它
- 从Kip远程关机
解决方案
通过批处理文件执行关机功能的方法如下:
shutdown -r
重新启动shutdown -s
关闭shutdown -l
注销shutdown -t xx
,其中`xx'是关闭/重新启动/注销之前要等待的秒数shutdown -i
为我们提供一个对话框,以填写我们要使用的功能shutdown -a
终止先前的关闭命令。...非常方便!shutdown -h
进入休眠状态。容易犯错-不能寻求帮助shutdown -y
删除关闭时的所有提示(任何文档中没有帮助)
其他选项:
- -f强制选择动作
-t <seconds>
设置关闭时间。将" -t 0"用于"现在"-c <message>
添加消息到关机
如果我们在远程计算机上,则可能还需要添加-f选项以强制重新引导。否则,会话可能会关闭,并且顽固的应用程序可能会挂起系统。
每当我想强制立即重新启动时,都会使用此命令:
shutdown -t 0 -r -f
对于更友好的"给他们一些时间"选项,可以使用以下命令:
shutdown -t 30 -r
如我们在注释中看到的,-f表示超时。
Brutus 2006是为这些选项提供GUI的实用程序。
原始答案:2008年10月
我们还获得了所有的"`rundll32.exe shell32.dll"系列:
(请参见下面的更新)
rundll32.exe user.exe,** ExitWindows **
[Windows快速关闭]rundll32.exe user.exe,** ExitWindowsExec **
[重新启动Windows]
rundll32.exe shell32.dll,SHExitWindowsEx n
n代表:
- 0-`注销'
- 1-`关机'
- 2-
REBOOT
- 4-
FORCE
- 8-
POWEROFF
(可以组合-> 6 = 2 + 4FORCE REBOOT
)
2015年4月更新(6年后):
1800信息请在评论中指出:
Don't use rundll32.exe for this purpose. It expects that the function you passed on the command line has a very specific method signature - it doesn't match the method signature of ExitWindows.
雷蒙·陈(Raymond CHEN)写道:
- 在2004年,"如果我们不匹配呼叫约定,会出什么问题?":
The function signature required for functions called by rundll32.exe is:
void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst, LPSTR pszCmdLine, int nCmdShow);
That hasn't stopped people from using rundll32 to call random functions that weren't designed to be called by rundll32, like user32 LockWorkStation or user32 ExitWindowsEx.
(哎呀)
The actual function signature for ExitWindowsEx is:
BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);
- 2011年:"在人行道上扔垃圾:rundll32程序的可悲历史"
并使其清晰可见:
- 在2013年的"何时使用rundll32的指导是什么?简单:不要使用它":
Rundll32 is a leftover from Windows 95, and it has been deprecated since at least Windows Vista because it violates a lot of modern engineering guidelines.
当远程连接到计算机(目标仍然是WindowsXP;我不确定目标WindowsVista)时,尽管"开始"菜单上的"关机"已由"断开会话"或者类似方法代替,但是应该有一个名为" Windows安全性"的工具,它也可以执行相同的操作就像Owen所指的Ctrl + Alt + End一样。
我们可能已经意识到了这一点,但以防万一:只需在"运行"框中键入" shutdown -r"(或者任何我们喜欢的命令),然后按Enter键就容易多了。
保存将批处理文件保留在各处。
没有人提到-m
选项来进行远程关机:
shutdown -r -f -m \machinename
还:
- -r参数会导致重新引导(这通常是我们在远程计算机上想要的,因为从物理上启动它可能很困难)。
- -f参数选项强制重新启动。
- 当然,我们必须具有适当的特权才能关闭远程计算机。
我会在记事本或者写字板中写出基本的注销命令:
@echo off shutdown -l
这基本上与手动单击"开始"和"注销"相同,但是如果已准备好批处理文件,则速度稍有提高。