admin管理员组

文章数量:1586212

🚀 前言

本文是《C++常用软件分析工具从入门到精通案例集锦》专栏的导航贴(点击链接,跳转到专栏主页,欢迎订阅,持续更新…)。

专栏介绍:根据近几年C++软件异常排查的项目实践,详细讲述如何使用PE工具、Dependency Walker、GDIView、Process Explorer、Process Hacker、Process Monitor、API Monitor、Clumsy、DebugDiag、Windbg、IDA Pro、Beyond Compare等常用分析工具,以及如何使用这些工具去巧妙地分析和排查日常工作中遇到的问题,有很强的实战参考价值!专栏中以图文并茂的方式给出具体的实战问题分析实例,带领大家逐步熟悉并掌握这些工具的使用,有效地提高大家分析问题和解决问题的能力,适合基础进阶和想做技能提升的相关C++开发人员及相关测试人员!

专栏适用人群:C++软件开发人员及相关测试人员。

📢 在做技术分享与内部交流时,发现很多人并没有使用过这些常用的分析工具,在软件遇到问题时,分析问题的手段和方法单一有限,处理问题的效率低,甚至有时会影响工作与项目进度!
📢 所以决定推出常用分析工具案例集锦的技术专栏,通过具体的实战问题分析实例,带领大家逐步熟悉并掌握这些工具的使用,有效地提高大家分析问题和解决问题的能力!


专栏文章还在持续更新 ing…
 
如果文章有用,可以点赞收藏关注,也可以订阅专栏


🌾 熟练掌握这些工具的使用,能够快速地辅助分析C++软件运行过程中遇到的多种问题,能够有效地提高排查问题和处理问题的效率。
🌾 要有捕捉学习机会的意识,要主动地去了解和学习身边同事使用的高效分析工具!无论对技术还是对工具,要保持足够的好奇心,想要尝试去像其他同事那样去熟练的使用,去高效的排查问题!工具学会了,技能学到了,就是自己的了!好奇心有时是一种源源不断的动力!


📢 当前专栏主要分享C++常用软件分析工具从入门到精通案例集锦,关于C++基础入门与实战进阶的内容,则可以查看对应的专栏:⭐️ C++基础入门与实战进阶点击该链接,跳转到专栏主页,欢迎订阅,持续更新中…)。

专栏介绍:以多年的开发实战为基础,总结并讲解一些的C/C++基础与项目实战进阶内容,以图文并茂的方式对相关知识点进行详细地展开与阐述!专栏涉及了C/C++领域多个方面的内容,包括C++基础及编程要点、C++11新特性(不仅看开源代码会用到,面试也会涉及到)、C++开源库介绍与使用、代码分享(调用系统API、使用开源库)、编程技术(动态库、多线程、多进程、数据库编程及网络编程等)、软件UI编程(Win32/duilib/QT)、C++软件调试技术(排查软件异常的手段与方法、常用软件分析工具使用、实战问题分析案例等)、设计模式、网络基础知识与进阶内容等。

《C++基础入门与实战进阶》专栏是接下来要重点打造的技术专栏,目前专栏文章已经更新到300多篇,还在持续的更新中,也欢迎订阅该专栏


🔰 文章列表


⭐️第1章:为什么要学习使用C++软件常用分析工具?学会这些工具都有哪些好处?

功能介绍:本文详细讲述为什么要学习C++软件分析工具的使用,以及学会这些工具的使用都有哪些好处。

⭐️第2章:C++软件开发值得推荐的十大高效软件分析工具

功能介绍:本文系统地介绍了Dependency Walker、GDIView、Process Explorer、Process Monitor、API Monitor、Clumsy、Windbg、IDA Pro等常用分析工具,并给出相关的问题分析实例。

⭐️第3章:哪些软件分析工具需要使用到pdb符号文件?

功能介绍:本文详细讲述哪些软件分析工具需要使用到pdb符号文件,以及如何使用pdb文件。

⭐️第4章:使用Process Explorer和Clumsy工具定位软件高CPU占用问题

功能介绍:本文详细讲述一个使用Process Explorer和Clumsy去排查软件CPU占用高的问题实例,并详细介绍了如何使用这两个工具。

⭐️第5章:使用Dependency Walker和Process Explorer排查程序缺少ucrtbase.dll等运行时库以及报0xC000007B错误问题总结

功能介绍:本文详细讲述使用Dependency Walker和Process Explorer排查程序缺少ucrtbase.dll等运行时库以及报0xC000007B错误的完整排查过程,并详细讲解了发布软件版本时C/C++运行时库及系统通用时库(the Universal CRT)的部署问题。

⭐️第6章:使用API Monitor巧妙探测C++程序中监听2620端口的模块

功能介绍:本文详细讲述如何使用API Monitor巧妙探测C++程序中监听2620端口的模块,搞清楚2620端口到底是哪个模块占用的,以完成端口安全性检测。

⭐️第7章:使用Process Explorer和Dependency Walker排查C++程序中dll库动态加载失败问题

功能介绍:本文详细讲述使用Process Explorer和Dependency Walker排查C++程序启动时dll库动态加载失败的完整过程,并详细介绍了如何使用这两个工具。

⭐️第8章:在Windbg中设置断点追踪打开C++程序远程调试开关的模块

功能介绍:在动态调试的Windbg中设置断点,追踪哪个模块调用了打开远程调试开关的接口打开了C++程序的远程调试开关,快速地定位了问题。

⭐️第9章:使用Process Monitor排查因dll库被锁定导致C++程序启动报“0xc0000022”错误问题

功能介绍:详细讲述使用Process Monitor排查因dll库被360安全卫士/杀毒软件锁定导致C++程序启动报“0xc0000022”错误问题,并给出了解决办法。

⭐️第10章:使用Windbg定位Windows C++程序中的内存泄漏

功能介绍:本文详细讲述了使用Windbg分析软件内存泄漏的一般步骤,并给出了具体的问题分析实例。

⭐️第11章:使用Process Monitor探测日志文件是C++程序哪个模块生成的

功能介绍:本文详细讲述Process Monitor快速定位日志文件是C++程序哪个模块生成的,以完成日志模块的整理工作。

⭐️第12章:使用SPY++查看窗口信息去分析C++客户端UI软件问题

功能介绍:可以使用SPY++查看软件窗口的坐标、大小及窗口风格等信息,以辅助分析UI软件问题。也可以使用SPY++探测主流软件的UI实现框架及技术细节。

⭐️第13章:内存越界一定会导致程序崩溃吗?详解内存越界

功能介绍:本文详细解释了内存越界不一定导致内存越界的问题,全面介绍了C++内存越界的相关内容。

⭐️第14章:使用Process Monitor探测Windows系统高DPI缩放设置的注册表项

功能介绍:本文详细讲述如何使用Process Monitor探测Windows系统中高DPI缩放操作对应的注册表项的设置,以实现通过代码去控制程序的DPI缩放设置。

⭐️第15章:使用API Monitor监测主流软件是如何实现阻止屏保的功能的

功能介绍:本文详细讲述使用API Monitor监测主流软件调用了哪个API函数以及传入了什么参数,实现阻止屏保的功能,以模仿相关功能的实现。

⭐️第16章:使用Dependency Walker和Process Explorer排查PeViewer软件release版本发布问题

功能介绍:本文详细讲述使用Dependency Walker和Process Explorer排查PeViewer软件release版本发布缺少dll库的问题。

⭐️第17章:使用Dependency Walker和dumpbin工具定位C++软件启动时找不到接口的报错问题

功能介绍:本文详细讲述使用Dependency Walker和dumpbin工具去排查C++软件启动时在某个dll中找不到接口的报错问题,并详细介绍这两个工具的使用。

⭐️第18章:使用GDIView工具排查GDI对象泄漏导致程序UI界面绘制异常的问题

功能介绍:本文详细讲述如何使用GDIView工具去排查因为GDI对象泄漏导致的程序UI界面绘制异常及异常闪退问题。

⭐️第19章:使用Process Explorer和Windbg分析程序中的句柄泄露问题

功能介绍:本文详细讲述使用Process Explorer和Windbg分析程序中的句柄泄露问题,句柄泄漏包括内核对象句柄(比如事件句柄)和线程句柄等。

⭐️第20章:查看开源操作系统ReactOS源码,解决调用LoadLibrary接口去动态加载dll库失败问题

功能介绍:通过查看开源操作系统ReactOS的源码,解决调用LoadLibrary接口去动态加载dll库失败问题,将LoadLibrary换成LoadLibraryEx接口解决。

⭐️第21章:IDA反汇编工具使用详解

功能介绍:详细讲述反汇编工具IDA的下载与安装,使用IDA查看二进制文件中的汇编代码,以及如何去辅助分析C++软件异常问题。

⭐️第22章:Linux下gdb调试命令介绍

功能介绍:详细介绍Linux下调试器gdb常用的命令。

⭐️第23章:详解Linux内核态调试工具kdump

功能介绍:详细介绍Linux内核态调试工具kdump。

⭐️第24章:设置程序以管理员权限运行无效问题的排查过程分享

功能介绍:本文详细讲述Windows UAC用户访问权限控制以及标准用户权限和管理员权限,以及如何判断程序是否以管理员权限运行。

⭐️第25章:使用Process Monitor工具监测进程对注册表和文件的操作

功能介绍:本文详细讲述如何使用Process Monitor工具监测目标进程对注册表和文件的操作活动。

⭐️第26章:使用Windbg排查C++程序调用IsBadReadPtr或IsBadWritePtr引发内存访问违例问题

功能介绍:本文详细讲述使用Windbg去排查C++程序调用IsBadReadPtr或IsBadWritePtr引发内存访问违例问题。

⭐️第27章:使用Debug Diagnostic Tool工具排查内存泄露问题

功能介绍:介绍如何使用微软的Debug Diagnostic Tool工具去排查程序中的内存泄露问题。

⭐️第28章:clumsy网络环境模拟工具介绍

功能介绍:本文详细介绍如何使用clumsy网络环境模拟工具去模拟弱网环境的场景。

⭐️第29章:安装QQ音乐后导致Windows系统程序audiodg.exe频繁报错

功能介绍:本文详细讲述安装QQ音乐后导致Windows系统程序audiodg.exe频繁报错的完整排查过程。

⭐️第30章:查看exe和dll等二进制文件时间戳(生成时间)的工具与方法介绍

功能介绍:本文详细讲述查看exe和dll等二进制文件时间戳(生成时间)的工具与方法。

⭐️第31章:如何让我们的软件跳过360和金山毒霸的“随意拦截”?

功能介绍:本文详细讲述通过360与金山毒霸的软件开发中心认证去解决360与金山毒霸的拦截问题。

⭐️第32章:使用PE信息查看工具和Dependency Walker工具排查因为库版本不对导致程序启动报错的问题

功能介绍:本文详细介绍如何使用PE信息查看工具和Dependency Walker工具排查因为库版本不对导致程序启动报错的问题。

⭐️第33章:使用PE信息查看工具和Beyond Compare文件比较工具排查dll库文件版本不对的问题

功能介绍:本文详细讲述如何使用PE信息查看工具和Beyond Compare文件比较工具排查dll库文件版本不对的问题。

⭐️第34章:使用Process Explorer/Process Hacker与Windbg初步定位软件高CPU占用问题

功能介绍:本文详细介绍如何使用Process Explorer/Process Hacker与Windbg初步定位软件高CPU占用问题。

⭐️第35章:使用Process Explorer/Process Hacker和Windbg高效排查软件高CPU占用问题

功能介绍:本文详细介绍如何使用Process Explorer/Process Hacker和Windbg高效排查软件高CPU占用问题。

⭐️第36章:使用Visual Leak Detector排查内存泄漏

功能介绍:本文详细介绍如何使用Visual Leak Detector排查内存泄漏问题。

⭐️第37章:使用Dependency Walker和Process Explorer排查瑞芯微工具软件RKPQTool.exe启动报错的问题

功能介绍:本文详细介绍如何使用Dependency Walker和Process Explorer排查瑞芯微工具软件RKPQTool.exe启动报错的问题。

⭐️第38章:使用 Process Explorer 和 Windbg 排查软件线程堵塞问题

功能介绍:本文详细介绍如何巧妙使用 Process Explorer 和 Windbg 排查软件线程堵塞问题。

⭐️第39章:使用Windbg静态分析dump文件的一般步骤详解

功能介绍:本文详细介绍使用Windbg静态分析dump文件的一般步骤及相关要点。

⭐️第40章:使用Windbg动态调试目标进程的一般步骤详解

功能介绍:本文详细介绍使用Windbg动态调试目标进程的一般步骤及相关要点。

⭐️第41章:使用IDA查看汇编代码上下文,结合安卓系统生成的Tombstone文件,排查安卓app程序底层库崩溃问题

功能介绍:本文详细介绍如何使用IDA查看汇编代码上下文,结合安卓系统生成的Tombstone文件,排查安卓app程序底层库崩溃问题。


📝 最后

《C++常用软件分析工具从入门到精通案例集锦》专栏的文章都在这里啦(点击链接,跳转到专栏主页,欢迎订阅,持续更新…)。

文章会持续更新,大家有想要了解的功能点或者话题,可以在评论区告诉我!

喜欢本专栏的文章,可以点赞、订阅支持一下,你的肯定是对我最大的支持!

也可以收藏本文章,收藏后可以快速查看本专栏后续更新的一系列文章!

本文标签: 常用软件集锦入门案例工具