使用 Visual Studio 断点调试 DLL
继上文说到使用 IDA 和 WinDbg 调试无 dmp 文件
那么在有源码的情况下可以直接断点调试 DLL,目的是查看 DLL 内部的函数调用
场景:
程序执行到某个 DLL 时突然崩溃,先确定 Debug 生成的 DLL 在程序中运行是否也会有闪退
如果有,则适用于 VS 断点调试
操作步骤:
在 Debug 下生成一个对应的 DLL
注意:必须是 Debug 生成的 DLL,不然没法断点
然后将 DLL 替换到崩溃程序的运行目录下,目的是崩溃程序运行时依赖的是 Debug 的 DLL
接着 VS 以 Debug 模式运行 DLL 的源码程序,并点击 Attach to Process
崩溃程序和 DLL 源码程序不是一回事,DLL 源码生成的 DLL 供崩溃程序使用的

选择要附加的进程,也就是我们之前运行的崩溃程序

确定 Attach 成功后,崩溃程序调用到 Debug 的 DLL 时就会停在我们预先打的断点上,通过断点我们就可以单步调试来查看函数调用以找出崩溃的地方

上面截图是 sentry-native 相关源码
使用 Visual Studio 断点调试 DLL的更多相关文章
- Visual Studio断点调试, 无法监视变量, 提示无法计算表达式
在使用Visual Studio 2012进行断点调试时,对某个变量添加监视,出现"无法计算表达式"的提示. 解决办法:依次点击菜单栏中的"调试"→" ...
- Visual Studio高级调试技巧
1. 设置软件断点,运行到目标位置启动调试器 方法①:使用汇编指令(注:x64 c++不支持嵌入汇编) _asm 方法②:编译器提供的方法 __debugbreak(); 方法③:使用windows ...
- Visual Studio Code 调试 PHP
Visual Studio Code 调试 PHP 2018/12/4 更新 Nginx + php-cgi.exe 下与 Visual Studio Code 配合调试 必需环境 Visual St ...
- [No0000AE]在 Visual Studio 中调试 XAML 设计时异常
在 Visual Studio 中进行 WPF, UWP, Silverlight 开发时,经常会遇到 XAML 设计器由于遭遇异常而无法正常显示设计器视图的情况.很多时候由于最终生成的项目在运行时并 ...
- Visual Studio的调试技巧
Visual Studio的调试技巧 [原文地址] Debugging Tips with Visual Studio 2010 [原文发表日期] 2010/8/19 10:48 AM 这是我写的关于 ...
- Visual Studio 使用调试技巧
Visual Studio 使用调试技巧 这篇文章来源于http://damieng.com/blog/2014/02/05/8-visual-studio-debugging-tips-debug- ...
- 用 Visual Studio 2012 调试你的ASP程序
最近搞到一段很值得参考的ASP项目,无奈技术有限,打开看完代码后感觉自己就像从来没学过ASP一样.唉...大神的世界 不过在网上看到一个有趣的方法,可以用Visual Studio 2005来调试AS ...
- Visual Studio Code调试electron主进程
Visual Studio Code调试electron主进程 作者: jekkay 分类: electron 发布时间: 2017-06-11 14:56 一·概述 此文原出自[水滴石]: htt ...
- 在 Visual Studio 中调试 XAML 设计时异常
在 Visual Studio 中进行 WPF, UWP, Silverlight 开发时,经常会遇到 XAML 设计器由于遭遇异常而无法正常显示设计器视图的情况.很多时候由于最终生成的项目在运行时并 ...
- [译]如何在visual studio中调试Javascript
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
随机推荐
- [转帖]OceanBase 存储引擎详解
https://zhuanlan.zhihu.com/p/436485359 作者简介:沈炼,蚂蚁集团技术风险部数据库高级专家毕业于东南大学,2014年以来从事 OceanBase 在蚂蚁的架构工作, ...
- [转帖]061、监控指标之TiKV
资源相关 Grafana监控 TiKV-Details -> Cluster - Store Size / Available Size Grafana监控 TiKV-Details -> ...
- [转帖]Kafka-LEO和HW概念及更新流程
https://www.cnblogs.com/youngchaolin/p/12641463.html 目录 LEO&HW基本概念 LEO&HW更新流程 LEO HW 更新流程示例分 ...
- [转帖]LVS入门篇(四)之LVS实战
LVS入门篇(四)之LVS实战 https://www.cnblogs.com/linuxk/p/9360922.html 一.LVS的NAT模式实战 1.环境说明: HOST OS role rem ...
- 【转帖】查看mysql库大小,表大小,索引大小
https://www.cnblogs.com/lukcyjane/p/3849354.html 说明: 通过MySQL的 information_schema 数据库,可查询数据库中每个表占用的空间 ...
- 简单的获取ESXi服务器上面开启了多少个vCPU的办法
开启ssh 执行命令 esxcli vm process list |grep Config |cut -b 17- |xargs cat |grep numvcpus |cut -d " ...
- vue3中retive的错误用法导致数据不跟新
retive的错误用法 <template> <div> 司藤的信息==>{{ objInfo }} <button @click="handerHttp ...
- 理解Vuex的辅助函数mapState
参考的地址是: https://www.cnblogs.com/tugenhua0707/p/9794423.html 之所以会在这里记录下来,是为了方便自己以后忘记的时候查看学习而已~: 并没有别的 ...
- 【K哥爬虫普法】大众点评VS百度地图,论“数据权属”对爬虫开发的罪与罚!
我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K哥特设了"K哥爬虫普法"专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知 ...
- 小白学k8s(10)-k8s中ConfigMap理解
理解ConfigMap 什么是ConfigMap ConfigMap的创建 使用key-value 字符串创建 从env文件创建 从目录创建 通过Yaml/Json创建 ConfigMap使用 用作环 ...