debugview使用方法_debugger怎么用

debugview使用方法_debugger怎么用1、什么是DebugView?DebugView是一个系统调试信息输出的捕获工具。2、DebugView它能干吗?可以捕获程序中由TRACE()和OutputDebugString()输出的信息。说的具体一点,在程序中使用如下函数:1)、OutputDebugString 或者在MFC中使用TRACE2)、内核模式中使用Out_Deb

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

1、什么是DebugView?

DebugView是一个系统调试信息输出的捕获工具。


2、DebugView它能干吗?

可以捕获程序中由 TRACE()和 OutputDebugString()输出的信息。说的具体一点,在程序中使用如下函数:

1)、 OutputDebugString  或者在MFC中使用TRACE

2)、内核模式中使用Out_Debug_String,DbgPrint ,_Debug_Printf_Service 

编译程序为DEBUG版本,然后运行程序(注意:不是在vs中运行,是单独运行),打开DebugView 就可以在其中看到输出的调试信息。


3、DebugView初体验:

1)、打开DebugView,然后在菜单栏中选择Computer–>Connect Local,连接本地调试。

2)、了解工具栏几个常用的按钮功能:

debugview使用方法_debugger怎么用

过滤器的功能比较实用:include 表示调试信息包含的字符串,exclue 表示不包含的字符串,多个字符串使用“;”号隔开。


3)、测试程序:

#include <tchar.h>
#include <stdlib.h>
#include "windows.h"

#define UseDebugView

int main()
{
	int nRepeatTimes = 0;
#ifdef UseDebugView
	do 
	{
		TCHAR _buf[256] = { 0 };
		swprintf_s(_buf, 256, L"KANDY--正在进行第<%d>次连接...\n", nRepeatTimes);
		OutputDebugStringW(_buf);

		nRepeatTimes++;
		Sleep(1000);
	} while (nRepeatTimes < 3);
#endif

	system("pause");
	return 0;
} 

Jetbrains全家桶1年46,售后保障稳定


4、DebugView输出的信息:

debugview使用方法_debugger怎么用



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/219238.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Wappalyzer 是一个Firefox插件,也是一个网站

    Wappalyzer 是一个Firefox插件,也是一个网站https wappalyzer com download nbsp Wappalyzer 是一个 Firefox 插件 也是一个网站 安装 Firefox 插件后 它会检查每个网站使用了哪些 Web 应用程序 目前共 67 种 包括博客引擎 CMS 电子商务程序 统计工具 主机控制面板 Wiki 系统和 JS 框架等等 检查结果会以图片方式显示在 Firefox 浏览状态栏右侧

    2025年6月10日
    3
  • Vue项目运行报错:解决webpack版本问题「建议收藏」

    Vue项目运行报错:解决webpack版本问题「建议收藏」解决“Error:Rulecanonlyhaveoneresourcesource(providedresourceandtest+include+exclude)”前面也会报错找不到webpack,在package-lock.json里查找之,发现安装的版本竟然是5.1.0,而没有更新过依赖,可以正常编译的项目里都是4.x。那基本可以确认了。步骤:先删掉node_modules和package-lock.json手动在package.json

    2022年8月9日
    7
  • Lintcode 1667.石头

    Lintcode 1667.石头题目大意:一条直线上有n个石头,一个人从左往右走,碰到奇数块石头(碰到一块石头数一个数,这里指数的数是奇数),就往右扔,碰到偶数的石头就不管他,如果两块石头在同一个位置,就扔大的那块(能扔的距离小的)。问最后最远的那块石头的位置。思路:用优先队列模拟,每遇到奇数石头,就将其坐标加上D[i],放回优先队列,当石头重叠时,先扔投大的(能扔的距离小的),故在比较函数中,以位置为第一关键字,以投掷距离…

    2022年7月24日
    7
  • 正尝试在 OS 载入程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内执行托管代码,这样做会导致应用程序挂起。「建议收藏」

    正尝试在 OS 载入程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内执行托管代码,这样做会导致应用程序挂起。

    2022年2月3日
    59
  • 计算机网络协议汇总_帧中继是一种什么协议

    计算机网络协议汇总_帧中继是一种什么协议阅读目录1.网络层次划分2.OSI七层网络模型3.IP地址4.子网掩码及网络划分5.ARP/RARP协议6.路由选择协议7.TCP/IP协议8.UDP协议 9.DNS协议10.NAT协议11.DHCP协议12.HTTP协议13.一个举例  计算机网络学习的核心内容就是网络协议的学习。网络…

    2022年9月1日
    7
  • C语言符号意思(看了必懂系列)「建议收藏」

    C语言符号意思(看了必懂系列)「建议收藏」所有的努力都不会完全白费,你付出多少时间和精力,都是在对未来的积累。世界上什么都不公平,唯独时间最公平,你是懒惰还是努力,时间都会给出结果。auto:声明自动变量一般不使用double:声明双精度变量或函数int:声明整型变量或函数struct:声明结构体变量或函数break:跳出当前循环else:条件语句否定分支(与if连用)long:声明长整型变量或函数swit…

    2022年5月19日
    81

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号