pdb文件及其作用(转)
程序数据库 (PDB) 文件保存着调试和项目状态信息,使用这些信息可以对程序的调试配置进行增量链接。当以 /ZI 或 /Zi(用于 C/C++)生成时,将创建一个 PDB 文件。
在 Visual C++ 中,/Fd 选项用于命名由编译器创建的 PDB 文件。当使用向导在 Visual Studio 中创建项目时,/Fd 选项被设置为创建一个名为 project.PDB 的 PDB。
如果使用生成文件创建 C/C++ 应用程序,并指定 /ZI 或 /Zi 而不指定 /Fd 时,则最终将生成两个 PDB 文件:
VC80.PDB (更笼统地说就是 VCx0.PDB,其中 x 表示 Visual C++ 的版本。)该文件存储各个 OBJ 文件的所有调试信息并与项目生成文件驻留在同一个目录中。
project.PDB 该文件存储 .exe 文件的所有调试信息。对于本机 C/C++代码,它驻留在 \debug 子目录中。对于托管代码,它驻留在 \WINDEBUG 子目录中。
每当创建 OBJ 文件时,C/C++ 编译器都将调试信息合并到 VCx0.PDB 中。插入的信息包括类型信息,但不包括函数定义等符号信息。因此,即使每个源文件都包含公共头文件(如 <windows.h>),这些头文件中的 typedef 也只存储一次,而不是在每个 OBJ 文件中都存在。
链接器将创建 project.PDB,它包含项目的 EXE 文件的调试信息。project.PDB 文件包含完整的调试信息(包括函数原型),而不仅仅是在 VCx0.PDB 中找到的类型信息。这两个 PDB 文件都允许增量更新。链接器还在其创建的 .exe 或 .dll 文件中嵌入 .pdb 文件的路径。
Visual Studio 调试器使用 EXE 或 DLL 文件中的 PDB 路径查找 project.PDB 文件。如果调试器在该位置无法找到 PDB 文件或者如果路径无效(例如,如果项目被移动到了另一台计算机上),调试器将搜索包含 EXE 的路径,即在“选项”对话框(“调试”文件夹,“符号”节点)中指定的符号路径。调试器不会加载与所调试的二进制不匹配的 PDB。pdb文件及其作用
pdb文件及其作用(转)相关推荐
- c语言pdb文件,VISUAL c+中的pdb文件及其作用
VISUAL c+中的pdb文件及其作用 程序数据库 (PDB) 文件保存着调试和项目状态信息,使用这些信息可以对程序的调试配置进行增量链接.当以 /ZI 或 /Zi(用于 C/C++)生成时,将创建 ...
- vs2010 利用DMP文件、pdb文件查找release下的异常行号的方法
2018-01-12 创建人:Ruo_Xiao 开发环境:Windows7,VS2010,WinDbg 6.12. 一.源码 #include "stdafx.h" #includ ...
- 根据Uniprot ID/PDB ID批处理获取蛋白质.pdb文件
1.根据Uniprot ID批处理获取蛋白质.pdb文件 由于Uniprot的ID号可能对应多个NCBI的ID,但是根据Alphafold可以获取其唯一的PDB文件,所以用代码批处理获得.pdb文件如 ...
- 说说Debug文件夹下的.pdb文件
.PDB文件,全称为"程序数据库"文件.我们使用它(更确切的说是看到它被应用)大多数场景是调试应用程序.目前我们对.PDB文件的普遍认知是它存储了被编译文件的调试信息,作为符号文件 ...
- pdb文件及引发的思考
最初只想知道线上iis里需要不需要pdb文件,了解部分之后对于.net底层产生了浓厚的兴趣,看了一点点资料 资料来源: https://www.cnblogs.com/itech/archive/20 ...
- lib vs 生成pdb_「pdb文件」VS PDB文件详解 - seo实验室
pdb文件 转自https://blog.csdn.net/feihe0755/article/details/54233714 PDB(Program Data Base),意即程序的基本数据,是V ...
- VS PDB文件详解
转自https://blog.csdn.net/feihe0755/article/details/54233714 PDB文件的介绍 PDB(Program Data Base),意即程序的基本数据 ...
- vc 运行不了pdb文件什么鬼_PDB是什么文件_PDB文件怎么打开_PDB文件能删吗
PDB是什么文件?一些用户在操作电脑的时候,可能会碰到后缀名为.pdb的文件,该文件是程序数据库文件,相信很多用户对于PDB文件都不了解,下面小编将给大家科普下PDB文件知识,请大家耐心阅读下文. P ...
- pdb文件 PDB文件:每个开发人员都必须知道的 .NET PDB文件到底是什么?
pdb文件包含了编译后程序指向源代码的位置信息,用于调试的时候定位到源代码,主要是用来方便调试的. 在程序发布为release模式时,建议将 pdb文件删除, 同时,对外发布的时候,也把 pdb删除, ...
最新文章
- 网站发布外链如何防止后期被删除?
- PAT 乙级 1041 考试座位号
- LeetCode 397. 整数替换(递归 贪心)
- 脏牛Linux本地提权漏洞复现(CVE-2016-5195、Linux、Android、提权)
- Entity Framework 6新特性:全局性地自定义Code First约定
- caffe使用预训练的模型进行finetune
- Spring框架学习之SpringAOP(二)
- centos下valgrind的安装与使用
- Pytorch-OpCounter: Pytorch平台计算模型#Parameters和FLOPS的工具包
- 2021-05-17 吾日三省吾身
- 使用标准测试函数测试全套 MATLAB 优化算法
- 前端预览PDF:PDFObject、PDF.js
- xyz文件怎么生成三维模型_根据三维空间坐标点如何构建三维模型
- Renascence架构简介
- Win10系统电脑声卡驱动正常但没声音?驱动人生解决方案
- 在Linux如何搭建Oracle11g Data Guard
- 当使用广告拦截器时,有些页面无法查看,应该怎样解决?
- 互联网2B和2C的区别
- 啊哈C——学习2.10一起来找茬
- Neat Converter格式转换