在Release版本中输出打印信息,实现TRACE功能
来源:互联网 发布:常熟淘宝拍卖 编辑:程序博客网 时间:2024/05/16 19:42
在Release版本中不支持TRACE打印信息。所以在Release中需要自己实现TRACE,由于在VC6.0中不支持宏传递可变参数,所以编写函数实现TRACE;
1. 在stdafx.cpp中编写函数实现TRACE功能;
CStdioFile gDbFile;
void __cdecl db_print(const char *lpszFormat,...)
{
#ifdef REL_PRINT
#ifdef NDEBUG
int nBuf;
char szBuffer[512];
memset(szBuffer,0,512);
va_list args;
va_start(args,lpszFormat);
nBuf = _vsnprintf(szBuffer, sizeof(szBuffer), lpszFormat, args);
gDbFile.WriteString(szBuffer);
va_end(args);
#endif
#endif
}
这个函数就是把打印信息写到文件中;
2. 在stdafx.h中声明一下:
extern CStdioFile gDbFile;
#define REL_PRINT
void __cdecl db_print(const char *lpszFormat,...);
#ifdef NDEBUG
#define TRACE db_print
#endif
3. 在应用程序类中的InitInstance()中创建这个文件;
gDbFile.Open("C:\\XXX_Debug.txt",CFile::modeCreate|CFile::modeReadWrite|CFile::shareDenyNone);
在ExitInstance() 中关闭文件:
gDbFile.Close();
通过以上操作,在release中TRACE可以打印信息到文件中。
通过是否定义 REL_PRINT来关闭release中的打印功能。
- 在Release版本中输出打印信息,实现TRACE功能
- Android中Log.d和Log.v如何实现在release版本不输出
- iOS release版本去除NSLog打印信息
- 在release版本中如何打开调试信息
- xCode在release版本中去掉调试信息
- 实现Release版本调试功能
- 在非mfc程序中实现trace功能
- wince在release模式打印DEBUGMSG信息
- mfc vs2008 Debug调试下 TRACE语句打印的调试信息并没有在输出窗口的解决办法
- 在release版本禁止输出NSLog内容
- 在release版本禁止输出NSLog内容
- 在C#中实现打印功能
- 在VC对话框中实现打印功能
- 在C#中实现打印功能
- 在PB中实现分段打印功能
- 在Android.mk和Makefile文件中输出打印信息
- 在MFC程序中使用控制台输出打印信息
- 在MFC程序中使用控制台输出打印信息
- 《C#入门到精通》学习笔记 -- 实践: 自定义异常类的实现(2013-04-18)
- android基础知识02——线程安全2:handler、message、runnable
- 进程通信系列-单向邮槽
- Mybatis中传参包There is no getter for property named 'XXX' in 'class java.lang.String'
- poj1010
- 在Release版本中输出打印信息,实现TRACE功能
- apache shiro集群实现(二)— cache共享
- Android 4.0 HDMI相关代码
- Android属性简介
- atof()函数实现
- 面向对象-对象通俗解释[Objective-C代码]
- android基础知识02——线程安全3:Message,MessageQueue,Handler,Looper
- ssh不使用密码登录Linux服务器
- vbaj中传递参数值方式,值传递和引用传递