Win32 SDK或MFC下使用printf调试打印功能
2012-12-23 13:04
295 查看
1、在项目自动生成的stdafx.h文件中添加下面头文件
#include <io.h> //在MFC下可不使用此头文件
#include <fcntl.h>
#include <stdio.h>
2、把下面的函数加到你初始化的地方,然后你就可以使用printf函数了
void InitConsoleWindow()
{
int nCrt = 0;
FILE* fp;
AllocConsole();
nCrt = _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
fp = _fdopen(nCrt, "w");
*stdout = *fp;
setvbuf(stdout, NULL, _IONBF, 0);
}
以下红色部分是我初始化函数中添加的
BOOL CSerialPortptestDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
CString str;
int Index;
HKEY hKey;
LONG ret;
OSVERSIONINFO osvi;
BOOL bOsVersionInfoEx;
char keyinfo[100],comm_name[200],ValueName[200];
int i;
DWORD sType,Reserved,cbData,cbValueName;
// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE); // 设置大图标
SetIcon(m_hIcon, FALSE); // 设置小图标
InitConsoleWindow();
printf( "str = %s\n ", "debug");
调用此函数后会弹出一个CONSOLE,然后printf的东西就会出现在上面。
#include <io.h> //在MFC下可不使用此头文件
#include <fcntl.h>
#include <stdio.h>
2、把下面的函数加到你初始化的地方,然后你就可以使用printf函数了
void InitConsoleWindow()
{
int nCrt = 0;
FILE* fp;
AllocConsole();
nCrt = _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
fp = _fdopen(nCrt, "w");
*stdout = *fp;
setvbuf(stdout, NULL, _IONBF, 0);
}
以下红色部分是我初始化函数中添加的
BOOL CSerialPortptestDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
CString str;
int Index;
HKEY hKey;
LONG ret;
OSVERSIONINFO osvi;
BOOL bOsVersionInfoEx;
char keyinfo[100],comm_name[200],ValueName[200];
int i;
DWORD sType,Reserved,cbData,cbValueName;
// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE); // 设置大图标
SetIcon(m_hIcon, FALSE); // 设置小图标
InitConsoleWindow();
printf( "str = %s\n ", "debug");
调用此函数后会弹出一个CONSOLE,然后printf的东西就会出现在上面。
相关文章推荐
- VS IDE环境下,windows GUI(Qt MFC,win32)使用控制台实时打印调试信息
- 【VC编程】笔记3---使用Win32SDK编程,模仿MFC的消息映射处理机制
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息。
- Win32程序(例如MFC、后台服务等)使用AllocConsole()添加调试用控制台
- S3C2440在MDK4.22下使用printf向串口打印调试
- MFC中使用printf输出调试信息
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- 使用 JLINK 的 RTT 功能 进行 调试打印数据
- MFC 程序如何使用 printf 输出调试信息
- 使用SWO来替代串口实现Printf打印功能
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- 在不同的线程中使用printf打印调试信息居然引起程序CoreDump。
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- 在MFC程序中使用到printf,std::cout输出调试
- VS2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- visual studio 2015使用MFC的console调试打印
- MFC调用win32窗口显示调试信息,使用AllocConsole 函数
- MFC调用win32窗口显示调试信息,使用AllocConsole 函数
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- win32 app里使用控制台打印调试信息