生成Release版本的.pdb文件

    软件分为Debug版本、Release版本这2种版本,其中Debug版本是带有.pdb调试信息文件,而Release版本不带.pdb调试信息文件。软件发布时,一般采用Release版本,若因内存泄漏、数组访问越界、除零错误、磁盘读写错误等异常,造成软件崩溃,会生成一个.dmp崩溃文件。该.dmp崩溃文件,如同飞机的黑匣子,记录软件(或飞机)处于崩溃那那一刻的堆栈信息、运行错误和执行的代码语句行。.dmp文件需要Release版本的exe携带.pdb调试信息或.pdb文件,才能解析到具体的代码崩溃行。这里介绍在visual studio里给Release工程,添加.pdb调试信息。比如,在VS2019里,给工程SqlOne添加Release版本的调试信息。

1 先切换到Release版本

    点击VS工具栏的Release – 》OK,如图(1)所示,切换到Release版本

图(1) 切换到Release版本

2 在链接器里,勾选"生成调试信息"

    在VS解决资源管理器里, 右击SqlOne工程 --》属性 --》链接器 --》调试 --》生成调试信息(/DEBUG) --》确定,如图(2)、图(3)所示:

图(2) 右击工程--》属性

图(3) 在链接里,启用"生成调试信息"

3 配置C/C++属性

    1) 右击工程 --》属性–》【配置属性】–》C/C++ --》常规–》调试信息格式 ,勾选 用于"编辑并继续的程序数据库(/ZI)"–》确定,如图(4) 所示:

图(4) 选择 用于"编辑并继续的程序数据库(/ZI)"

    2) 右击工程 --》属性–》【配置属性】–》C/C++ --》优化–》已禁用(/Od) --》确定,如图(5) 所示:

图(5) 在C/C++里,禁用"优化"选项

    设置好之后,按Ctrl+Shift+B快捷键,编译该工程,在Release目录,得到与exe同名的.pdb文件,如图(6)所示:

图(6) 得到与exe同名的.pdb文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/125809.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker安装ActiveMQ

ActiveMQ简介 官网地址:https://activemq.apache.org/ 简介: ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,…

如何搭建一个 websocket

环境: NodeJssocket.io 4.7.2 安装依赖 yarn add socket.io创建服务器 引入文件 特别注意: 涉及到 colors 的代码,请采取 console.log() 打印 // 基础老三样 import http from "http"; import fs from "fs"; import { Server } from &quo…

FM5888协议系列-USB充电控制器 移动电源应用

产品描述: FM5888是一款USB快速充电控制IC,符合USB电池充电规范1.2版本,允许充电装置吸取的电流类似于使用原装充电器。FM5888可自动识别充电设备类型,支持多种智能手机,并通过对应的USB充电协议与设备握手&#xff0c…

25 mysql like 是否使用索引

前言 这里主要是 探究一下 explain $sql 中各个 type 诸如 const, ref, range, index, all 的查询的影响, 以及一个初步的效率的判断 这里会调试源码来看一下 各个类型的查询 需要 lookUp 的记录 以及 相关的差异 此系列文章建议从 mysql const 查询 开始看 测试表结构…

【100个 Unity实用技能】☀️ | UGUI Text中加入超链接文本,可直接点击跳转

Unity 小科普 老规矩,先介绍一下 Unity 的科普小知识: Unity是 实时3D互动内容创作和运营平台 。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。Unity 平台提供一整套完善的软件解决方案&#xff…

关联规则挖掘(上):数据分析 | 数据挖掘 | 十大算法之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…

SSM 注解配置方式整合

文章目录 Bean注解使用注解方式代替 web.xml 文件Spring注解方式整合Mybatis事务管理器配置请求与响应EnableWebMvc 注解REST 风格RestControllerComponentScan静态资源放行表现层数据封装EnableAspectJAutoProxy(AOP注解方式)AOP 通知获取数据&#xff…

一文详解动态链表和静态链表的区别

1、引言 本文主要是对动态链表和静态链表的区别进行原理上的讲解分析,先通过对顺序表和动态链表概念和特点的原理性介绍,进而引申出静态链表的作用,以及其概念。通过这些原理性的概述,最后总结归纳出动态链表和静态链表的区别。本…

Java下正面解除警告Unchecked cast: ‘java.lang.Object‘ to ‘java.util.ArrayList‘

就是我在反序列化时&#xff0c;遇到这样一个警告&#xff1a; Unchecked cast: java.lang.Object to java.util.ArrayList<com.work1.Student>然后我去网上查&#xff0c;有些人说用SuppressWarnings(“unchecked”)去忽略警告&#xff0c;但是我觉得作为一名合格的程序…

小谈设计模式(20)—组合模式

小谈设计模式&#xff08;20&#xff09;—组合模式 专栏介绍专栏地址专栏介绍 组合模式对象类型叶节点组合节点 核心思想应用场景123 结构图结构图分析 Java语言实现首先&#xff0c;我们需要定义一个抽象的组件类 Component&#xff0c;它包含了组合节点和叶节点的公共操作&a…

二项分布以及实现

文章目录 前言所谓二项分布就是只会产生两种结果的概率 1.概念 前言 所谓二项分布就是只会产生两种结果的概率 1.概念 下面是一个二项分布的的theano实现 import numpy as np import theano import theano.tensor as T from theano.tensor.nnet import conv from theano.ten…

[图论]哈尔滨工业大学(哈工大 HIT)学习笔记16-22

视频来源&#xff1a;2.7.1 补图_哔哩哔哩_bilibili 目录 1. 补图 1.1. 补图 2. 双图 2.1. 双图定理 3. 图兰定理/托兰定理 4. 极图理论 5. 欧拉图 5.1. 欧拉迹 5.2. 欧拉闭迹 5.3. 欧拉图 5.4. 欧拉定理 5.5. 伪图 1. 补图 1.1. 补图 &#xff08;1&#xff09;…