使用VS调试Dump文件
分类:
文章
•
2024-01-06 11:03:34
(一) 调试Dump文件步骤
1. 准备调试所需要的文件放到一个文件夹:dump文件,程序编译生成的pdb文件(版本必须是产生崩溃的那个版本的编译信息),可执行文件(发生崩溃的版本)。如下图:
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzc3My9hNGUwZjU4ZDZmZjEzZmFhNGE4ZWZlZTUwM2FkZDk0ZC5wbmc=)
2. 使用visual studio打开上图中的dump文件。然后配置该程序的代码路径(代码会滚到该程序所处的版本),如下图,
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzQ3OS81MDBkN2M4NjUwNGE2ZTE4MWRkYTVlYTMxYmZkZjQyZi5wbmc=)
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzU3Ni82ZGNmYTI4MjY0OGRiOGI5YWQ2YjM1YmFkMWI2MGM4OC5wbmc=)
3. 点击调试,如图,
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzI3OC9jZjUyMzQwOGYxNjEwNGVjYjc4NDIzOTY0ZDNlMDY1Ni5wbmc=)
4. 然后可以定位到发生crash的代码位置,如图,
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzk2Ni81ZWY0Y2UyYzYyMjcxODdkZTNjYzE1OGIyODE4OWM1Ni5wbmc=)
(二)准备数据,生成dump
1. 在VS中输入如下代码
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzk2Ni81ZWY0Y2UyYzYyMjcxODdkZTNjYzE1OGIyODE4OWM1Ni5wbmc=)
2. 使用release,点击debug(F5),程序crash在访问空指针那一行,然后点击生成dump。如图,
![使用VS调试Dump文件 使用VS调试Dump文件](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzU5Ni9jMzhjMTlmMDNkY2RkZmFmYjM5YmJmNGQ0NWMwM2Y3NC5wbmc=)