现在的位置: 首页 > 综合 > 正文

MFC调用控制台窗口显示调试信息

2017年12月18日 ⁄ 综合 ⁄ 共 701字 ⁄ 字号 评论关闭

参考: http://blog.sina.com.cn/s/blog_4bf793ad0100mv2e.html

 

 

一  创建一个Console,AllocConsole

  直接使用 AllocConsole(); 马上,若是进程内第一次调用这个函数,一个空的cmd窗口会蹦出来。需要注意,一个进程只能创建一个console,多次调用会返回FALSE;而且,这个窗口是个独立的控制台窗口。

 

 

 

二 显示Hello World,WriteConsole

   有了console,我们还需要获取它的句柄HANDLE,然后才能在上面显示。方法是 GetStdHandle,它会获取前面我们AllocConsole得到的cmd窗口的句柄;若未调用AllocConsole,将获取标准的输入输出窗口句柄。

 

 

简单点,用宏代替即可,如:

#define MY_OUT_(c)   {HANDLE hdlWrite = GetStdHandle(STD_OUTPUT_HANDLE);WriteConsole(hdlWrite, c, sizeof(c), NULL, NULL);WriteConsole(hdlWrite, "/n", 1, NULL, NULL);}

 

 

 三获取用户输入, ReadConsole 【如果纯是输出信息,这步就不需要了】

    光显示是不够的,用户还需要操作啊,当然,是键盘输入。

 

 

四 关闭Console

 

更多的可以参考如上链接及MSDN函数说明。 

 

最近在调试多点触摸应用程序, 为了更好了查看还没有搞清楚的消息行为,只有采用日志输出。 前面有过一个log的(涉及到boost,很麻烦)目前为止,这种方法是最最简单的, 简单好用。

抱歉!评论已关闭.