以完全隐藏的方式运行批处理文件

以完全隐藏的方式运行批处理文件

我正在寻找某种方法来运行批处理文件(.bat),而用户看不到任何内容(没有窗口、没有任务栏名称等)。

我不想使用某些程序来做这件事,我正在寻找更干净的东西。我发现一个办法它使用 VBScript,但我也不喜欢使用 VBS。

答案1

解决方案 1:

将这一行文本保存为文件invisible.vbs

CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0, False

要以不可见的方式运行任何程序或批处理文件,请按如下方式使用:

wscript.exe "C:\Wherever\invisible.vbs" "C:\Some Other Place\MyBatchFile.bat"

为了能够传递/传递参数列表,只需使用两个双引号

CreateObject("Wscript.Shell").Run "" & WScript.Arguments(0) & "", 0, False

例子:Invisible.vbs "Kill.vbs ME.exe"

解决方案 2:

使用命令行工具静默启动一个进程:安静的希康或者隐藏执行

答案2

隐藏批处理文件或命令文件或任何文件....使用 Windows XP 内置IExpress.exe实用程序从批处理文件中构建 .EXE。使用时,IExpress请确保选中运行隐藏选项并选中所有不显示任何内容的框。创建 .exe 后,将其放在您选择的任何运行命令文件夹中,您将永远不会看到它出现。

答案3

我不喜欢 VBScript 解决方案。

下载并复制执行程序到您的%systemroot%\system32文件夹,然后将此命令添加到批处理的第一行:

nircmd.exe win hide ititle "cmd.exe"

您还可以通过命令更改批处理文件终端窗口的标题,title以避免隐藏所有cmd窗口,如下所示:

title MyBatch
nircmd.exe win hide ititle "MyBatch"

答案4

如果您的批处理文件可以容纳一行和这么多字符,那么只需使用快捷方式,右键单击放在随机目录中的文件夹,然后跳过向导的其余部分,最后右键单击刚刚创建的快捷方式,单击属性,然后在目标下输入您通常在批处理文件中输入的内容。然后 Bobs 就大功告成了!

优点:

 No Command Window
 Ability to use an icon
 Same Functionality of bat file

缺点:

 Limited to one line, so many characters

相关内容