从 .bat 文件关闭打开的 cmd 窗口打开应用程序并执行文件

时间:2021-04-21 22:57:33

标签: windows batch-file cmd scheduled-tasks

我有一个 .bat 文件,它打开一个应用程序,然后执行一个在应用程序中运行作业的文件。我无法关闭在 Windows 任务调度程序中运行任务时打开的 cmd 窗口。

"C:\Proram Files (x86)\ \   \   Robot.exe" execute =f "S:\dept\     Team\   \   YearEndAudit\Main.xaml"

如有任何帮助,我们将不胜感激。

问候,

杰夫

1 个答案:

答案 0 :(得分:0)

我可能误解了你,但我明白的是:

  • 您正在使用 CMD 打开可执行文件,但无法关闭 之后的 CMD。

我很确定这些信息量足以解决您的问题,但无论如何我们的数据很少,而且数据令人困惑。请尝试改进您的下一篇文章。

发生的事情是您可能只是将程序/脚本的名称放在您的 CMD 中,例如:

program.exe

这会导致程序依赖于 CMD 运行,并且还会阻止窗口被关闭。你可以在一切开始时使用 "start" 来解决这个问题,比如:

start "" "X:\Path\program.exe" execute -f "everythingyouwants"

您可能需要在程序文件夹中,因为一些懒惰完成的程序可能会将您的当前位置视为默认位置,并且可能找不到它们需要的依赖项。 如果您想留在当前所在的文件夹中,可以使用:

pushd "thepath\ofthe\program"
start program.exe
popd

另一种方法是在VBS中隐藏创建脚本的窗口,如:

Set oShell = CreateObject ("Wscript.Shell")
Dim strArgs
strArgs = "cmd /c X:\YOURSCRIPTPATH\YOURSCRIPTNAME.bat/cmd"
oShell.Run strArgs, 0, false

但是,如果路径也需要报价,我们可以有冲突。以上并不理想,但有时可能会有所帮助。

如果没有这对你的作品,让我们知道。

希望这会有所帮助,
K.