直接举例说明:

Win32项目:

#include <Windows.h>OutputDebugString(TEXT("调试信息:MyCircleImpl::~MyCircleImpl GETS CALLED!"));

MFC项目:

#include  <afxwin.h>TRACE(_T("调试信息:MyCircleImpl::~MyCircleImpl GETS CALLED!"));

用法上,这两个的用法跟printf是一样的。

区别在于,TRACE是对OutputDebugString的封装,只有在DEBUG配置下才会起作用。(定义了_DEBUG宏),否则TRACE什么都不做(去afx.h查看TRACE的定义)。

OutputDebugString不受_DEBUG宏的控制,但是在没有debugger的情况下,OutputDebugString进入其内部后什么也不做直接return

所以如果是Win32项目,最好的做法如下:

Trace.h

#pragma once#include <Windows.h>#ifdef _DEBUG
#define TRACE OutputDebugString
#else
#define TRACE __noop // afx.h中如果没定义_DEBUG,TRACE就定义为__noop从而在Release配置下不会产生影响
#endif

client code:

#include "Trace.h"

TRACE(TEXT("调试信息:MyCircleImpl::~MyCircleImpl GETS CALLED!\n"));

参考资料:

http://stackoverflow.com/questions/494653/how-can-i-use-the-trace-macro-in-non-mfc-projects

https://msdn.microsoft.com/en-us/library/s6btaxcs.aspx

http://bbs.csdn.net/topics/390482393

https://msdn.microsoft.com/en-us/library/windows/apps/aa363362(v=vs.85).aspx

Win32和MFC项目如何输出调试信息到VS的调试窗口相关推荐

  1. VS2012编译调试WDM驱动(KdPrint无调试信息 debugview win7无调试信息)

    对于WDM驱动 VS2012有向导可以新建WDM项目 如图 这点说明不用自己配置 文件目录 C/C++ 选项 LINK 选项 等一系列的参数 比以前方便了不少 新建以后是空项目 放入<windo ...

  2. 获取init程序的调试信息和uevent的调试信息需要打开的两个宏

    为什么80%的码农都做不了架构师?>>>    在android.2.3版本中: 路径:system/core/init,文件名:log.h #define LOG_DEFAULT_ ...

  3. VC MFC 调试信息 DebugView

    11 一.如何使用DebugView.exe 打印调试信息: 捕捉Release模式的Win32程序输出的调试信息,请选中"Capture Global Win32"选项 只有调用 ...

  4. 你知道怎么使用DebugView查看调试信息吗?

    简介 DebugView是sysinternals工具集中的一款用来查看调试信息的工具.不管你是内核开发人员还是应用程序开发人员,都会用到这款神器.先简单看看DebugView可以干什么吧. 可以查看 ...

  5. Visual Studio调试时遇到的问题:生成下面模块时,启用了优化或没有调试信息

    Posted on 2010/04/26 by zitiger 最近调试程序过程中每次都出现这样的信息:"生成下面模块时,启用了优化或没有调试信息",点了"确定" ...

  6. python打开文件报错无效序列_黑马python入门(4):python基础(序列,异常,操作文件,模块包,日志调试信息)

    序列 str声明:test_str="abcedf" 也可以保留字符串里面的格式来 test_str=""" \r\n测试标题 hello world ...

  7. Windbg下无法显示dbgPrint输出的信息

    Windbg下无法显示dbgPrint输出的信息 http://blog.csdn.net/happy987818/article/details/50516236 刚开始使用Windbg进行内核驱动 ...

  8. Linux下获取xml调试信息等级

    Linux下获取XML调试信息等级 #ifndef _LOG_H_ #define _LOG_H_#include <stdio.h> #include <string.h> ...

  9. acs cisco 查看log_获取 Cisco Secure ACS for Windows 的版本和 AAA 调试信息

    本文解释如何查看Cisco Secure ACS for Windows版本和如何设置和得到验证.授权和统计(AAA)调试信息. 有关文档规则的详细信息,请参阅 Cisco 技术提示规则. 本文档没有 ...

最新文章

  1. 你知道怎么分库分表吗?如何做到永不迁移数据和避免热点吗?
  2. C++结构体,联合体
  3. gns3 查看网关_gns3常用命令
  4. Python——反射
  5. 科技业务同比增长超20%,中国平安“金融+科技”成了吗?
  6. Verilog的数据流、行为、结构化与RTL级描述
  7. android 分享图片和视频
  8. 面试必会系列 - 1.6 Java 垃圾回收机制
  9. 【Java爬虫】我的第一个爬虫 -- 简单抓取网页源代码
  10. opencv 和 parfor
  11. golang jwt设置过期_听说你的JWT库用起来特别扭,推荐这款贼好用的!
  12. pygame render怎么显示中文_PyGame开发游戏(2D)02.基础图元
  13. Mqtt协议IOS端移植3
  14. oracle的sql优化
  15. 异常详细信息: System.Data.SqlClient.SqlException:用户 ‘IIS APPPOOL\DefaultAppPool‘ 登录失败解决办法
  16. CENTSO5中如何加DNS,IP
  17. 码农の带娃绝技:TensorFlow+传感器,200美元自制猜拳手套
  18. python画彩色螺旋线_解决python彩色螺旋线绘制引发的问题
  19. 结构体C语言王者归来
  20. web服务器集群-------Apache网页优化 (1)网页压缩

热门文章

  1. 关于Action返回结果类型的事儿(下)
  2. jQuery对select操作
  3. Windows安全策略
  4. 如何建设一个适配“百度轻舟计划”的移动站
  5. 第7章 面向对象编程(OOP) 《Kotin 编程思想·实战》
  6. 太多选择——企业如何选择合适的BI工具?
  7. C# Keywords - is
  8. 链表题目总结(第一篇)
  9. windows备份与还原和两个主机的相互通信
  10. C++中explicit关键字的作用