如何阅读Windows GUI应用程序的控制台输出?


2

如果我没记错的话,可以将Windows应用程序编译为控制台或GUI应用程序。主要区别之一是控制台应用程序会自动获得一个控制台,而GUI应用程序则不会(尽管如果需要,他们可以通过调用来获得一个控制台AllocConsole)。

常识说,如果您使用GUI应用程序,printf或者std::cout从GUI应用程序使用,该输出将无处可寻,因为没有控制台可将其打印到该输出。但是我知道可以读取它,因为当我使用Wine在Linux上的终端上运行某些应用程序时,我可以读取printf和类似函数的输出。(是的,我确定打印的是应用程序,而不是Wine。)

在Windows上该怎么办?我尝试了DebugView,尽管它显示了一些来自应用程序的调试文本,但显示的效果却不如Wine那样多,这可能是因为DebugView仅限于对的调用OutputDebugString


没有; 您所描述的内容必须由应用程序的作者进行编程。
Ramhound

以我的直觉,我认为您可以尝试从命令提示符运行程序,然后将输出重定向到文件,例如gui_application.exe > output.txt。不知道它是否有效,我很好奇它是否有效。
肯尼斯L'

@KennethL是的,它有效。有趣。谢谢你的提示。
monq
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.