从命令行启动程序而不打开新窗口

And*_*193 18 windows command-line cmd

我正在尝试使用此命令以编程方式从CMD执行外部文件:

START "filepath"
Run Code Online (Sandbox Code Playgroud)

filepath是我的文件的路径它打开正常,但它也打开一个新的命令提示符窗口.

那么,这是在不打开新窗口的情况下打开外部程序的正确命令?

小智 17

在Windows 7中,第一个引用将是打开程序的CMD窗口的标题.

start "title" "C:\path\program.exe"
Run Code Online (Sandbox Code Playgroud)

像上面那样格式化你的命令会暂时打开一个CMD窗口,它会随着它的出现而快速消失,所以你真的不会看到它.

格式化这样的命令也允许您打开多个程序而无需等待第一个程序先关闭.

  • 救了我的命,需要使用`start"""C:\ path\program.exe"` (5认同)
  • @cprcrack 哇!我很高兴你的生命得以幸免。小心你让谁进入你的生活! (2认同)

Joh*_*tts 8

添加/ B,如命令行帮助中所述:

C:\>start /?
Starts a separate window to run a specified program or command.

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
  [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
  [/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B]
  [command/program] [parameters]

"title"     Title to display in window title bar.
path        Starting directory.
B           Start application without creating a new window. The
            application has ^C handling ignored. Unless the application
            enables ^C processing, ^Break is the only way to interrupt
            the application.
Run Code Online (Sandbox Code Playgroud)

  • 当父控制台关闭时,以这种方式启动的程序仍然会收到“^Break”。相反,我开始时没有使用 `/B`,然后使用 `cmdow "&lt;title&gt;" /HID` 隐藏新的控制台窗口 (2认同)

lsc*_*dex 6

我想如果你关闭了一个程序

taskkill /f /im "winamp.exe" 
//....(winamp.exe is example)...
Run Code Online (Sandbox Code Playgroud)

结束,所以如果你想启动一个可以使用的程序

start "" /normal winamp.exe 
Run Code Online (Sandbox Code Playgroud)

(/norma,/max/min是那个进程值cpu)

启动“文件路径”在此输入图像描述

如果你想要命令行而不打开新窗口,你可以这样写

开始/b“文件路径”在此输入图像描述

/B 是启动应用程序而不创建新窗口。应用程序已忽略 ^C 处理。除非应用程序启用 ^C 处理,否则 ^Break 是中断应用程序的唯一方法。