网络上的每一个指南都说使用 RUNDLL USER.EXE,ExitWindows 有效......从运行命令
但是,当从 bat 文件运行时,此命令虽然有效,但要求确认以终止“剩余”进程。该进程是 cmd 行本身。我无法使用“CALL”调用它,但由于 call 会创建一个新的命令行,我预计结果会相同。
这只是 Windows 95 的问题,它用于虚拟机在运行应用程序后自动关闭。这个想法基本上是在启动程序文件夹中有一个脚本,用于启动应用程序,等待它使用 START /WAIT 退出,然后使用某些东西自动关闭 Windows。
答案1
如果您将程序设置为 shell 而不是 explorer,那么它将自动运行,并且当程序退出时 Windows 将关闭。
摘自我 2001 年发表的一篇文章
将其复制到 c:\windows。如果您编辑c:\windows\system.ini
并更改
shell=explorer.exe
到
shell=progman.exe
然后你的计算机将以win3.11界面模式启动。
这是我上次更新网站 15 年以来http://www.mvps.org/serenitymacros
退出 Windows
前三部分来自下载页面上的 Tweak95。第四部分是随 Win98 而变化的。
关闭 Windows
退出 Windows 95 的命令。此命令只能用于关机,不能用于重新启动或退出到 msdos。要退出到 msdos,请键入 ExitToMsDos,它将运行同名的 Pif 文件。将命令放在快捷方式或批处理文件中。
C:\WINDOWS\RUNDLL32.EXE user.exe,ExitWindows
重新启动 Windows
要重新启动 Windows,请复制 Exit To Dos.pif(pif 部分被隐藏),然后将其复制并重命名为 Restart Windows。在属性中编辑程序表将命令行更改为:
C:\WINDOWS\command.com /C exit
确保已选中“退出时关闭”。在“高级”对话框中,选中“使用当前 MSDos 配置”以退出并重新启动 Windows 而无需重新启动。如果在退出和重新启动之前需要确认,请选中“进入 MSDos 模式前发出警告”。必须选中 MSDos 模式。
另一种方法是使用 ExitWindowsExec 函数。这将退出到 MSDos 以运行程序,但由于没有给出程序,Windows 重新启动。输入快捷方式或“开始 - 运行”对话框。
C:\WINDOWS\RUNDLL.EXE user.exe,ExitWindowsExec
关机对话框
此 reg 文件将设置关机对话框中的默认选项。Windows 95B 和 IE4 会记住最后选择的设置,因此要设置这些版本的默认设置(而不是最后操作),请将以下命令行添加到C:\Windows\Winstart.bat
(Winstart.bat
如果需要,请创建)。请记住使用简短的 filke 名称。
Regedit C:\<Path to Reg File>\ShutDown.Reg
或者将此命令行添加到快捷方式并将其放在启动文件夹中。
Regedit /s C:\<Path to Reg File>\ShutDown.Reg
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer]
'1=first choice in dialog box, 2=second choice, ect.
"Shutdown Setting"=dword:00000001
通过 SHExitWindowsEx
使用 User.exe 和 User32.dll 退出 Windows 函数无法控制执行哪种类型的关机,因为没有传递参数,它们的操作方式就像传递了 0 一样 - 对于 ExitWindows 来说是关机,对于 ExitWindowsEx 来说是注销。Shell32.dll 中未记录的函数 SHExitWindowsEx 似乎就是 Explorer 使用的函数,它接受参数。
rundll32.exe shell32.dll,SHExitWindowsEx [optional number in hex]
十六进制的动作值
EWX_LOGOFF 0
EWX_SHUTDOWN 1
EWX_REBOOT 2
EWX_FORCE 4
EWX_POWEROFF
for machines that turn off their own power 8
这些值可以加在一起,例如,5 表示关闭并强制应用程序关闭和隐式注销。
请注意,不重新启动就无法重新启动。这需要将 42(十六进制)参数传递给 User.exe 中的 ExitWindows。这无法通过命令行完成。请参阅上面的提示以了解解决方法。
答案2
%windir%\System32\shutdown.exe -r -f
添加-f
强制系统关闭或重新启动。在 Windows 95 中,路径将是 C:\Windows\Command,指的是本网站
答案3
尝试使用 调用上述命令,start
应该可以让它在后台运行,而不会让 cmd.exe 等待。我不知道 9x 语法,但start /?
在命令行上执行。