我才刚刚起步,我第一次尝试运行“hello world”时遇到了这个问题。
'Project2.exe' (Win32): Loaded 'C:\Users\Dustin\Documents\Visual Studio 2013\Projects\Project2\Debug\Project2.exe'. Symbols loaded.
'Project2.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'. Cannot find or open the PDB file.
'Project2.exe' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'. Cannot find or open the PDB file.
'Project2.exe' (Win32): Loaded 'C:\Windows\SysWOW64\KernelBase.dll'. Cannot find or open the PDB file.
'Project2.exe' (Win32): Loaded 'C:\Program Files\Bitdefender\Bitdefender\active virus control\Avc3_00261_012\avcuf32.dll'. Cannot find or open the PDB file.
'Project2.exe' (Win32): Loaded 'C:\Windows\SysWOW64\msvcr120d.dll'. Cannot find or open the PDB file.
The program '[3140] Project2.exe' has exited with code 0 (0x0).
谁能帮我弄清楚这些 pdb 文件在哪里以及如何解决这个问题?
谢谢。
最佳答案
*.pdb 文件是在构建 DLL 库模块时用于调试目的而生成的。它们包含 DLL 中各种二进制元素的符号和偏移量。
当您启动调试 session 时,IDE 将尝试查找与运行时加载的每个 DLL 关联的 *.pdb 文件。如果它找不到关联的 *.pdb 文件(具有相同的名称。例如 kernel.dll 和 kernel.pdb),它将呈现上面的消息:“找不到或打开 PDB 文件。”
此消息的意思是您将无法对该 DLL 中发生的任何事情进行任何符号调试。加载的DLL将正常运行,不受影响。
系统库的 pdb 文件应该安装在您的系统上,或者可以从 Microsoft 获得。无论出于何种原因加载的其他供应商的 dll 很可能不会随 pdb 文件一起提供,因此您必须忽略该警告。
您正在处理的内容的 pdb 文件将默认自动生成。
如果转到 VisualStudio 菜单工具:调试:符号,会出现一个用于管理 PDB 文件位置等的对话框。
关于c - Visual Studio 2013 : "Cannot find or open the PDB file",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27192746/