我刚刚开始,我第一次尝试运行“你好世界”给了我这个。
'Project2.exe'(Win32):已加载'C:\ Users \ Dustin \ Documents \ Visual Studio 2013 \ Projects \ Project2 \ Debug \ Project2.exe'。符号已加载。
'Project2.exe'(Win32):已加载'C:\ Windows \ SysWOW64 \ ntdll.dll'。无法找到或打开PDB文件。
'Project2.exe'(Win32):加载'C:\ Windows \ SysWOW64 \ kernel32.dll'。无法找到或打开PDB文件。
'Project2.exe'(Win32):已加载'C:\ Windows \ SysWOW64 \ KernelBase.dll'。无法找到或打开PDB文件。
'Project2.exe'(Win32):已加载'C:\ Program Files \ Bitdefender \ Bitdefender \ active virus control \ Avc3_00261_012 \ avcuf32.dll'。无法找到或打开PDB文件。
'Project2.exe'(Win32):已加载'C:\ Windows \ SysWOW64 \ msvcr120d.dll'。无法找到或打开PDB文件。
程序'[3140] Project2.exe'已退出,代码为0(0x0)。
有谁能帮我弄清楚这些pdb文件的位置以及如何解决这个问题?
谢谢。
答案 0 :(得分:2)
*。生成pdb文件是为了在构建DLL库模块时进行调试。它们包含DLL中各种二进制元素的符号和偏移量。
当您启动调试会话时,IDE将尝试查找与在运行时加载的每个DLL相关联的* .pdb文件。如果找不到关联的* .pdb文件(同名。例如kernel.dll& kernel.pdb),它将呈现上面的消息:"无法找到或打开PDB文件。"
此消息暗示您将无法对该DLL中发生的任何事情进行任何符号调试。加载的DLL将正常运行,不会受到影响。
系统库的pdb文件应安装在您的系统上,或者可以从Microsoft获得。由于任何原因而加载的其他供应商的dll很可能不会随pdb文件一起提供,因此您必须忽略该警告。
默认情况下,将自动生成您正在处理的内容的pdb文件。
如果您转到VisualStudio菜单工具:调试:符号有一个对话框,用于管理PDB文件位置等。
答案 1 :(得分:1)
您可以检查是否生成了调试信息吗?转到项目属性(右键单击然后属性)>配置属性>链接器>调试。生成调试信息应为YES,文件应为$(OutDir)$(TargetName).pdb
。
答案 2 :(得分:0)
查看结果,未加载的pdbs是系统dll,你不需要调试,我不认为。你的程序pdb加载得很好:
'Project2.exe'(Win32):已加载'C:\ Users \ Dustin \ Documents \ Visual Studio 2013 \ Projects \ Project2 \ Debug \ Project2.exe'。符号已加载。
没有加载pdbs的其他文件没有任何问题我不认为。没有为系统文件加载符号是正常的
如果您认为情况并非如此,那么您可以指出上面列表中您希望能够加载pdbs的文件?还有他们没有加载的问题是什么。
答案 3 :(得分:0)
执行以下操作:
转到调试 - >选项 - >符号 - >设置微软符号服务器
这应该对你很好..
如果您还有问题,请随时问我。