如何隐藏CMD窗口?

5

开机启动时,我有一个批处理文件来运行一些例行事项。

然而,黑色控制台弹出并一直保持打开状态,直到所有事情都完成...

有没有办法隐藏它并在后台运行?这样它就不会出现在最小化或系统托盘中。


请参考此文章:https://www.howtogeek.com/131597/can-i-run-a-windows-batch-file-without-a-visible-command-prompt/ - Gaurav
6个回答

5
您可以使用VBS脚本来实现此操作。您可以将所有代码编写为VBS,或者像这样调用批处理文件:
'launch.vbs
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "mybatch.bat", 0
WshShell = Null

2
创建一个文件的快捷方式。在新的快捷方式上:右键单击->属性。进入“快捷方式”选项卡,选择“运行:最小化”。(假设您使用的是WinXP)。

我本来也想建议这样做,但是后来注意到原帖作者不希望它“最小化或在系统托盘中显示”。 - Alek Davis
这解决了我的问题。我只需要在操作系统中工作时让它不要妨碍我。要完全隐藏窗口,我会使用Craig建议的vbscript。 - Arvo Bowen

2

这个链接应该会像帮助我一样帮助你。我使用了第二种解决方案,它使用了一个名为quiet.exe的程序。

使用方法是,只需调用quiet.exe program params_if_has

我的使用示例:quiet.exe php script.php


0

你实际上不能这样做,但如果你正在使用调度程序来运行批处理文件,你可以在创建作业时选择“不与桌面交互”。


0

尝试将您的文件重命名为.cmd而不是.bat

或者,如果您要执行一个.exe文件,请尝试:

start "" "C:\Program Files\SomeProg\someprog.exe"

注意:使用“start”命令时,您必须在命令提示符下操作。

将它重命名为.cmd,效果相同。尝试使用Ctrl+R,在运行框中键入start "" "C:\script.cmd",但出现了“找不到start”的错误。 - Arvo Bowen

0
我曾经有一个小程序,可以根据窗口标题隐藏窗口。因此,我的启动批处理首先使用title设置唯一标题,然后调用其他程序以隐藏具有该标题的窗口。这个方法很好用,但需要一些编程技巧。
如果您不想这样做,那么您应该像tr4656所说的那样使用任务计划程序。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接