如何在不等待批处理文件的情况下启动应用程序?

Mar*_*ood 145 windows batch-file

有没有办法在不等待批处理文件的情况下执行应用程序?我已经尝试过该start命令,但它只是创建了一个新的命令窗口.

Joe*_*oey 277

我在这里猜测,但你的start调用可能看起来像这样:

start "\Foo\Bar\Path with spaces in it\program.exe"
Run Code Online (Sandbox Code Playgroud)

这将打开一个新的控制台窗口,使用"\ Foo\Bar\Path,其中包含空格\ program.exe"作为标题.

如果你使用start引号包围(或需要)的东西,你需要将空引号作为第一个参数:

start "" "\Foo\Bar\Path with spaces in it\program.exe"
Run Code Online (Sandbox Code Playgroud)

这是因为它将它找到start第一个引用的参数解释为新控制台窗口的窗口标题.

  • 在实际路径之前使用双引号的大提示.我永远不会猜到这一点.谢谢你的分享. (11认同)
  • 当然,它不一定是空引号......你可以给它一个实际的相关标题.我会强烈推荐这个,因为它会让那些看到它的人更加清楚.`start'强制性的Atavistic Window标题""\ Foo\Bar\Path中有空格\ program.exe"` (3认同)
  • @Ayusman:这些选项仅适用于 16 位程序。我当然希望你身边没有这些东西。 (2认同)
  • 经过几个小时的谷歌搜索,我终于找到了答案。谢谢! (2认同)

Ed *_*tes 14

我为此使用了 start /b 而不仅仅是 start 并且它在每个命令都没有窗口的情况下运行,所以没有等待。


Shi*_*hah 7

如果你的exe需要参数,

start MyApp.exe -arg1 -arg2
Run Code Online (Sandbox Code Playgroud)


egr*_*nin 4

如果start找不到它要查找的内容,它会执行您所描述的操作。

由于您正在做的事情应该有效,因此您很可能遗漏了一些引号(或添加了额外的内容)。