MFC如何在有界面的应用程序中开启控制台窗口

Posted lidabo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC如何在有界面的应用程序中开启控制台窗口相关的知识,希望对你有一定的参考价值。

在有界面的应用程序中开启控制台窗口有时候非常有用,尤其是在调试多线程应用程序中,
由于通过断点的方式调试程序时会导致线程挂起从而导致各种难于预料的结果。这时候就可
以通过开启控制台窗口往窗口输出信息来查看线程的运行情况,这比通过日志文件输出的方式
更方便和实时。下面介绍两种开启控制台窗口的方法:
1.通过AllocConsole()函数打开控制台窗口
  AllocConsole();//打开控制台窗口
  HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);//获取标准输出句柄
  char msg[] = "点击了确定按钮! ";
  WriteConsole(hOutput,msg,strlen(msg),NULL,NULL);//向控制台窗口写入信息
以下是示例程序运行的的效果图:

每当点击按钮时就会在控制台输出"点击了确定按钮! "技术分享图片

2.通过配置相关属性
  通过在 属性->配置属性->生成事件->后期生成事件->命令行 中添加 
  editbin /subsystem:console $(OutDir)$(TargetName).exe
  使用cout或者printf向控制台输出 也可以通过获取标准输出句柄然后调用WriteConsole
  方式输出
本程序采用cout打印"Hello World"字符串

技术分享图片

以上是关于MFC如何在有界面的应用程序中开启控制台窗口的主要内容,如果未能解决你的问题,请参考以下文章

已经写好的控制台应用如何用MFC来添加窗口?

VS2015 MFC 修改应用程窗口大小 标题

如何更改 mfc 应用程序的背景属性

如何通过 mfc 应用程序中的编辑控制框更改窗口句柄?

MFC项目组合:如何将没有文档类的SDI应用程序添加到MDI应用程序中?应该使用子窗口吗?[MFC]

控制台程序可以使用MFC里面的一些函数和类吗