防止 cmd 窗口在运行时关闭

防止 cmd 窗口在运行时关闭

在 Windows 10 上。

我尝试查看其他问题,但所有解决方案都是针对您从命令行自行运行的 .exe 文件或 .bat 文件。

我正在使用一个带有 GUI 的程序,它可以自己运行其他 exe 文件,并且我试图在打开这些 exe 文件时记录 cmd 窗口输出。

我不能直接调用 exe,因为带有 GUI 的主程序正在处理它正在执行的其他程序所需的所有参数等。

有什么方法可以防止运行这些 exe 时关闭 cmd 窗口?

编辑:这不是一个完美的解决方案,但 ctrl+C 会暂停执行并在 cmd 窗口内弹出提示“终止批处理作业 (Y/N)?”,这使我有机会手动复制之前的所有输出。虽然不是最理想的,但我想分享一下,以防别人觉得它有用。

答案1

如果您可以创建或更改启动 exe 文件的快捷方式,则可以将其设置为以下内容:

cmd /k c:\path\program.exe

这样做的目的是创建一个 cmd 窗口,在其中启动程序,然后保持窗口打开。您可以像输入普通程序一样在其中输入内容,直到您单击 x 或输入 exit。

然后双击快捷方式就可以了。

无法将 cmd 配置为在启动通过控制台运行的 exe 文件时始终保持打开状态。

或者,您可以先通过单击 .exe 文件所在的地址栏来启动 cmd 提示符,以便您可以在其中键入并只需键入 cmd 即可在该窗口中启动 cmd,然后键入程序的名称。

如果这仍然不是您想要的,请编辑您的问题并详细说明您正在运行的带有 GUI 的程序是什么,以及您有哪些配置选项。

答案2

当我使用 C# 创建控制台应用程序时,我曾经遇到过这个问题,即 CMD 窗口在完成其工作后关闭。这是按照设计进行的,但有一种方法可以阻止这种情况发生,那就是在进程结束时要求用户输入,这样 CMD 窗口就会等待您按下任意键,然后退出进程并关闭。

在 C# 中,程序的最后一条语句必须是,System.ReadLine()但根据您的编程语言,它可以是任何类似的内容。

希望有所帮助。

相关内容