Visual Studio(VS)的 Release 配置中生成程序数据库(PDB)文件

news2025/3/25 18:05:42

      最近工作中的一个测试工具在测试多台设备上使用过程中闪退,存了dump,但因为是release版本,没有pdb,无法根据dump定位代码哪块出了问题,很苦恼,查了下怎么加pdb生成,记录一下。以下是具体的设置步骤:

1.打开项目属性页

在解决方案资源管理器中,右键单击你的项目,然后选择 “属性”。

2.选择 Release 配置

在属性页的左上角,将 “配置” 下拉框选择为 “Release”。

3.配置生成 PDB 文件

  • C/C++ 项目
    • 展开 “配置属性” -> “C/C++” -> “调试信息格式”。
    • 将 “调试信息格式” 设置为 “程序数据库 (/Zi)” 或者 “编辑并继续的程序数据库 (/ZI)”(后者支持编辑并继续调试)。
  • C# 项目
    • 展开 “配置属性” -> “生成”。
    • 勾选 “高级” 按钮,在 “调试信息” 下拉框中选择 “pdb-only” 或者 “full”。“pdb-only” 仅生成 PDB 文件,“full” 还会在 DLL 或 EXE 中嵌入一些调试信息。

4.配置 PDB 文件输出路径

你可以指定 PDB 文件的输出路径,这有助于组织项目文件。

  • C/C++ 项目
    • 展开 “配置属性” -> “链接器” -> “调试”。
    • 在 “生成调试信息” 选项中,确保选择了 “是 (/DEBUG)”。
    • 在 “程序数据库文件名” 中,可以指定 PDB 文件的输出路径和文件名,例如 $(OutDir)$(TargetName).pdb
  • C# 项目
    • 在 “高级” 设置中,“调试信息” 设置好后,PDB 文件会默认生成在与输出文件相同的目录下。如果你想更改路径,可以通过修改项目文件(.csproj)手动指定。

5.应用设置并重新生成项目

点击 “应用” 和 “确定” 保存设置,然后重新生成你的项目(“生成” -> “重新生成解决方案”)。这样,在 Release 配置下生成的可执行文件或库文件就会伴随着相应的 PDB 文件。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ubuntu 解挂载时提示 “umount: /home/xx/Applications/yy: target is busy.”

问题如题所示,我挂载一个squanfs文件系统到指定目录,当我使用完后,准备解挂载时,提示umount: /home/xx/Applications/yy: target is busy.,具体的如图所示, 这种提示通常是表明这个路径的内容正在被某些进…

一条不太简单的TEX学习之路

目录 rule raisebox \includegraphics newenviro 、\vspace \stretch \setlength 解释: 总结: 、\linespread newcommand \par 小四 \small simple 、mutiput画网格 解释: 图案解释: xetex pdelatex etc index 报…

Matplotlib完全指南:数据可视化从入门到实战

目录 引言 一、环境配置与基础概念 1.1 安装Matplotlib 1.2 导入惯例 1.3 两种绘图模式 二、基础图形绘制 2.1 折线图(Line Plot) 2.2 柱状图(Bar Chart) 三、高级图表类型 3.1 散点图(Scatter Plot&#xff…

在大数据开发中ETL是指什么?

hello宝子们...我们是艾斯视觉擅长ui设计和前端数字孪生、大数据、三维建模、三维动画10年经验!希望我的分享能帮助到您!如需帮助可以评论关注私信我们一起探讨!致敬感谢感恩! 在数字经济时代,数据已成为企业最核心的资产。然而,分散在业务系统、日志文件…

OAuth 2.0认证

文章目录 1. 引言1.1 系列文章说明1.2 OAuth 2.0 的起源与演变1.3 应用场景概览 2. OAuth 2.0 核心概念2.1 角色划分2.2 核心术语解析 3. 四种授权模式详解3.1 授权码模式(Authorization Code Grant)3.1.1 完整流程解析3.1.2 PKCE 扩展(防止授…

Kubernetes的Replica Set和ReplicaController有什么区别

ReplicaSet 和 ReplicationController 是 Kubernetes 中用于管理应用程序副本的两种资源,它们有类似的功能,但 ReplicaSet 是 ReplicationController 的增强版本。 以下是它们的主要区别: 1. 功能的演进 ReplicationController 是 Kubernete…

[Lc_2 二叉树dfs] 布尔二叉树的值 | 根节点到叶节点数字之和 | 二叉树剪枝

目录 1.计算布尔二叉树的值 题解 2.求根节点到叶节点数字之和 3. 二叉树剪枝 题解 1.计算布尔二叉树的值 链接:2331. 计算布尔二叉树的值 给你一棵 完整二叉树 的根,这棵树有以下特征: 叶子节点 要么值为 0 要么值为 1 ,其…

蓝桥杯 之 第27场月赛总结

文章目录 习题1.抓猪拿国一2.蓝桥字符3.蓝桥大使4.拳头对决 习题 比赛地址 1.抓猪拿国一 十分简单的签到题 print(sum(list(range(17))))2.蓝桥字符 常见的字符匹配的问题,是一个二维dp的问题,转化为对应的动态规划求解 力扣的相似题目 可以关注灵神…

可视化动态表单动态表单界的天花板--Formily(阿里开源)

文章目录 1、Formily表单介绍2、安装依赖2.1、安装内核库2.2、 安装 UI 桥接库2.3、Formily 支持多种 UI 组件生态: 3、表单设计器3.1、核心理念3.2、安装3.3、示例源码 4、场景案例-登录注册4.1、Markup Schema 案例4.2、JSON Schema 案例4.3、纯 JSX 案例 1、Form…

Amdahl 定律

Amdahl 定律是用来表示,当提高系统某部分性能时对整个系统的影响,其公式如下: a表示我们提升部分初始耗时比例,k是我们的提升倍率,通过这个公式我们可以轻松的得知对每一部分的提醒,对整个系统带来的影响…

Linux系统之美:环境变量的概念以及基本操作

本节重点 理解环境变量的基本概念学会在指令和代码操作上查询更改环境变量环境变量表的基本概念父子进程间环境变量的继承与隔离 一、引入 1.1 自定义命令(我们的exe) 我们以往的Linux编程经验告诉我们,我们在对一段代码编译形成可执行文件后…

pnpm 报错 Error: Cannot find matching keyid 解决

1. 查看corepack版本,升级至0.31.0 npm i -g corepack0.31.0 这里注意环境变量,可能升级后还是指向旧版本,可以选择更新环境变量或者删除原指向的corepack命令 2. 更新pnpm corepack install -g pnpmlatest 问题解决。

Ubuntu实时读取音乐软件的音频流

文章目录 一. 前言二. 开发环境三. 具体操作四. 实际效果 一. 前言 起因是这样的,我需要在Ubuntu中,实时读取正在播放音乐的音频流,然后对音频进行相关的处理。本来打算使用的PipewireHelvum的方式实现,好处是可以直接利用Helvum…

Fiddler抓包工具最快入门

目录 前言 了解HTTP网络知识 简单了解网络访问过程 简单了解HTTP网络传输协议 工作过程 HTTP请求: Fildder工具使用教程 抓包的概念 一、什么是抓包 二、为什么要抓包 三、抓包的原理(图解) Fiddler工具 安装 使用 Fiddler查看…

编译器与中间表示:LLVM与GCC、G++、Clang的关系详解

编译器与中间表示:LLVM与GCC、G、Clang的关系详解 引言 编译器是软件开发中不可或缺的工具,它负责将高级语言(如C/C、Java等)转换为机器语言,使计算机能够理解和执行程序。中间表示(Intermediate Represe…

股指期货贴水波动,影响哪些投资策略?

先来说说“贴水”。简单来说,贴水就是股指期货的价格比现货价格低。比如,沪深300指数现在是4000点,但股指期货合约的价格只有3950点,这就叫贴水。贴水的大小会影响很多投资策略的收益,接下来我们就来看看具体的影响。 …

RHCE 使用nginx搭建网站

一。准备工作 Windows dns映射 创建目录网页 vim 编辑内容 添加如下 重启nginx服务,在Windows浏览器进行测试

AtCoder Beginner Contest 398(ABCDEF)

A - Doors in the Center 翻译: 找到一个满足下面情况长为N的字符串: 每个字符是 - 或 。是一个回文。包含一个或两个 。如果包含两个相邻的 。 如此字符串为独一无二的。 思路: 从两端使用 开始构造回文。在特判下中间部分,…

单表达式倒计时工具:datetime的极度优雅(智普清言)

一个简单表达式,也可以优雅自成工具。 笔记模板由python脚本于2025-03-22 20:25:49创建,本篇笔记适合任意喜欢学习的coder翻阅。 【学习的细节是欢悦的历程】 博客的核心价值:在于输出思考与经验,而不仅仅是知识的简单复述。 Pyth…

C++继承机制:从基础到避坑详细解说

目录 1.继承的概念及定义 1.1继承的概念 1.2 继承定义 1.2.1定义格式 1.2.2继承关系和访问限定符 1.2.3继承基类成员访问方式的变化 总结: 2.基类和派生类对象赋值转换 3.继承中的作用域 4.派生类的默认成员函数 ​编辑 默认构造与传参构造 拷贝构造&am…