如何在不打开窗口的情况下调用CMD

leg*_*ami 19 windows command-line cmd callback

我有一个C++方法(使用Visual Studio,如果它有帮助)调用cmd,如下所示:

start \B example.exe arg1 arg2 arg3
Run Code Online (Sandbox Code Playgroud)

问题是此调用会打开一个(cmd)窗口.如果我打开了另一个cmd,\ B可以工作,但如果没有,它会打开一个新窗口.

我也试过没有开始\ B但它是一样的....

我想避免这个新窗口,但我不知道如何.任何的想法?

dan*_*l11 12

我不知道如何在C++中做到这一点但是要打开一个新的命令提示符窗口,它也使用批处理文件最小化(或"隐藏")我将使用:

start /min cmd
Run Code Online (Sandbox Code Playgroud)

或者,如果您启动命令提示符,则可以键入:

@echo off
cls && start /b cmd
Run Code Online (Sandbox Code Playgroud)

这将重新启动当前命令提示符窗口而不关闭它,但重置所有先前设置的环境变量.希望这可以帮助!

(PS.这已经过测试,在Windows 7旗舰版操作系统上取得了成功)


Vin*_*tav 8

您可以使用"/ C"开关

cmd.exe /c /q dir/b
Run Code Online (Sandbox Code Playgroud)

这将运行"dir/b"命令并退出 - 不显示任何窗口,但如果要关闭ECHO,请使用"/ q"开关

cmd.exe /c dir/b
Run Code Online (Sandbox Code Playgroud)


Kla*_*sen 1

只需调用它而不开始:

example.exe arg1 arg2 arg3
Run Code Online (Sandbox Code Playgroud)