问题标签 [pdb-files]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2077 浏览

c++ - VS2010 C++ 不包含 .pdb 的路径是我根据 dumpbin 编译的 .dll

Visual Studio 按照我的意愿将项目编译为 dll,但是当我使用 dumpbin 检查这些 dll 时,它们的 pdb 没有条目,这可能是我加载它们时无法调试任何这些 dll 的原因在运行时,它们的 pdb 永远不会被加载。如何让 VS 编写这些路径?

视觉工作室,C++。

编辑:C++/General/Debug Information format ist set to "Program Database (/Zi)" and Linker/Debugging/Generate Debug Info are on "Yes (/DEBUG)",我相信这是正确的。

0 投票
1 回答
7503 浏览

c++ - 编译器 PDB 文件和链接器 PDB 文件

PDB我对编译器和链接器文件分别有什么区别(即在 Visual Studio 中Project Properties > C/C++ > Output Files > Program Database File Name vs Project Properties > Linker > Debugging感到困惑。我试图在网上找到答案,到目前为止我知道(可能是错误PDB的)编译器为文件生成了一个文件,objPDB链接器为二进制文件(exe或dll)生成了一个文件,并且是用于调试。

如果这不是真的,请解释差异。无论哪种方式,当我创建一个DLL我可以选择为编译器和链接器选择输出PDB文件时该怎么做,以及当我创建一个只有编译器生成PDB文件的 LIB 文件时该怎么做没有执行链接。

背景:库/dll被多个项目使用,然后需要PDB文件进行调试。在文件的情况下,lib没有歧义,因为只PDB生成了一个文件。但是在这种情况下DLL,我需要两个PDB文件来正确调试还是只需要链接器生成的文件?

0 投票
1 回答
1046 浏览

.net - 缺少 PDB 文件和引用的输出

我的 .Net 应用程序 A 引用了库 B。库 B 引用了库 C。当我重建 A(在调试模式下)时,它的输出目录包含 B.DLL 和 B.PDB 文件,但只有C.DLL 文件。C.PDB 丢失,或者更确切地说,它没有从其项目的调试文件夹中复制。

事实上,查看 B 的输出目录,那里也缺少 C.PDB。然而,C.PDB 至少在 C 的输出目录中。

为什么会这样,我该如何纠正?

更新: 事实证明它不仅仅是那个 PDB 文件。整个库不会在引用它的输出目录中更新。什么会导致这种行为?这可能是视觉工作室的错误吗?

0 投票
2 回答
659 浏览

c++ - Does winbase::LoadLibrary() load .pdbs?

I have issues with debugging of a library loaded at runtime, and an unknown is:

Does winbase::LoadLibrary() load the .pdb in debugging mode?

Because if it doesn't, that would explain why I cannot use any debugging in my DLL, and if it does, that would at least tell me to search for the problem somewhere else.

Obvious follow-up: If it does not, how do I get VS2010 to load the pdb anyway?

[1] http://msdn.microsoft.com/en-us/library/ms684175(VS.85).aspx

0 投票
5 回答
236413 浏览

c# - 什么是一 .pdb 文件?

什么是 PDB 文件,我如何在重建解决方案时将其从发布文件夹中排除?

0 投票
1 回答
2654 浏览

reverse-engineering - 符号不匹配,ida/windbg

最近我试图了解更多关于 Windows 内核的信息。我为我的系统下载了正确的符号(win7 x64 免费)。我运行 IDA 并打开 ntoskrnl.exe。IDA 询问是否附加 pdb 文件。但是大部分功能都没有解决 - sub_XXXXXX。所以我运行了 Windbg,我解开了必须在 ntoskrnl - KiSystemCall64 中的随机选择的函数。它显示输出。但是IDA中没有这样的功能(或者没有解决)。总而言之,使用相同的符号,在 WinDBg 中未汇编的函数在 IDA 中无法解析(没有符号)(反之亦然)。我将不胜感激您的任何帮助和建议。

0 投票
1 回答
131 浏览

c++ - 如何从 DIA SDK 过滤非内核(用户导入)dll?

我需要专门过滤所有用户导入的 dll。DIA SDK 提供 SymTagCompiland 下的所有模块,其中包括所有未明确链接的内核和其他导入。

我只需要那些在运行时或编译时显式链接的依赖 Dll(模块)(在项目配置的链接器的输入区域中提到)。

我该如何过滤这个?

问候,乌斯曼

0 投票
1 回答
552 浏览

c++ - 我们可以从 DIA SDK 计算/提取虚拟表地址吗?

如果实现了 DIA SDK 的 vtable 函数,我们可以提取一个类型的 vtable 的起始基地址吗?

问候,乌斯曼

0 投票
1 回答
511 浏览

pdb-files - 在哪里可以找到旧操作系统(如 Windows 2000)的 pdb/symbol 文件

我正在寻找 Windows server 2000 的符号文件,但似乎不再可以在 microsoft 网站上下载

0 投票
1 回答
486 浏览

debugging - Why DIA SDK get_libraryName symbol returns NULL for IDiaSymbol?

I need to find the correct .dll/.exe from where the function enumerated. For this I am using get_libraryName which to me should return file Name(.dll/.exe) in which the function was originally defined.

But It returns every time NULL(BadPtr=0x00000).. Is there any way out to retrieve the exact file Name from where the function was being defined and used ?

Regards Hassan