windows - 进程终止后保持 Windows 控制台窗口打开

标签 windows debugging console

Windows 7 是否有操作系统或用户帐户级别修改,我可以使用它来使已终止进程的控制台窗口保持打开状态?

背景:我喜欢使用控制台程序进行简单的测试。这些事情往往需要调试和分析,最简单的方法是使用 printf 或等效方法 - 这在几乎任何语言中都可用。不幸的是,当控制台程序终止时,包含文本缓冲区的窗口就会退出 - 我会失去这个简单的反馈。

但是,当您从 Visual Studio 中启动程序(无需调试)时,Visual studio 会设法启动该程序并在进程终止后使控制台窗口保持打开状态 - 这种行为很方便!不幸的是,我无法从 Visual Studio 启动所有进程。

那么,有没有办法启动所有程序或至少某些程序,使其控制台窗口保持打开状态,直到我关闭它而不是直到进程退出?我梦想有一些非常简单的工具(或注册表设置)来使 Windows 更适合简单的开发任务。

两种具体情况:从批处理文件启动新编译的程序(本质上是一个简单的单元测试),并通过资源管理器或其他一些外部应用程序启动程序(即无法传递参数) 。

进一步要求:理想情况下,无论控制台程序如何启动,任何解决方案都应该有效;特别是它不应该依赖于程序的语言或运行时,并且不应该要求对启动的程序进行更改或尽可能少地更改。

特别是:我总是可以将输出重定向到日志文件,因此我正在寻找比这更简单的东西;即不需要维护文件名和管理文件。您可以每分钟多次使用该工具,并且可以轻松使用多个并行进程。在执行结束时暂停是一种解决方法,需要更改代码,并且会破坏该进程的其他调用者(因为该进程永远不会终止),因此它并不比日志文件好,而且并不总是可用。

最佳答案

与其运行你的程序,为什么不通过像 cmd.exe/K 这样的 shell 命令来执行它,这应该保留你的程序运行的控制台。无论程序是如何构建的,这都应该适用于所有情况。

关于windows - 进程终止后保持 Windows 控制台窗口打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3607797/

相关文章:

java - "If statement"连续检查for循环索引数的倍数

C 程序在 linux 和 windows 上编译时没有相同的结果

java - 找不到或加载主类java

Java 俄罗斯方 block 旋转错误

php - 调试PHP

Python 2.7 - 完全清晰的控制台,包括输入行?

windows - 使用 Perl 在 Windows 中输入和读取文件时遇到问题

c# - .Net 内存增长问题

iphone - 如果在越狱的iPhone OS 2.2.1(libgcc版本?)上调试,iPhone应用程序将崩溃。

c++ - 如何在我的进程绑定(bind)到的控制台中获取行中的字符数?