就我而言,我正在运行一个名为file.bat
当我的用户使用右上角的[X]
关闭按钮关闭它时,我喜欢它在关闭之前需要运行一些程序。
例如,我希望我的程序在关闭之前隐藏自身,通过在用户关闭批处理运行 cmd 时运行几个命令行。(使用 [X] 关闭按钮)
ren file.bat file.bak
attrib +s +h file.bak
我想在程序结束时运行这两个命令行,然后用户使用右上角的关闭按钮 [X] 关闭它。所以请大家帮帮我。我不知道该怎么做。非常感谢。请帮忙。
答案1
因此,您需要做的是创建一个包装批处理脚本,我们将使用 VBScript 以不可见的方式运行该脚本。该批处理文件将为要运行的主批处理脚本打开另一个命令窗口,当该脚本以任何方式结束时,它将执行脚本中的其余命令
'Run Batch Invisible
CreateObject("Wscript.Shell").Run chr(34) & "C:\Path\Script Files\Wrapper.cmd" & Chr(34), 0, False
然后我们有wrapper.cmd:
REM Script: Wrapper.cmd
REM This script will Open another window, which, when closed will run a couple of commands.
SET "_BatchPath=C:\Path\Script Files"
SET "_BatchName=Your_Existing_Batch"
CALL START /WAIT "%_Batch%\%_BatchName%.bat"
MOVE /Y "%_Batch%\%_BatchName%.bat" "%_Batch%\%_BatchName%.bak"
Attrib +s +h "%_Batch%\%_BatchName%.bak"
GOTO :EOF
此示例使用您提出的示例命令。