我的可执行文件是setup.exe,在同一目录c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1中有一个名为setup.pdb的pdb文件。我的符号文件路径是这个cache*c:\symbols;srv*https://msdl.microsoft.com/download/symbols;c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1当我使用这个重新加载.reload /f我可以看到此错误:SYMSRV: c:\symbols\image00000001`3f6b0000.dbg\574587D664000\image00000001`3f6b0000.dbg not foundSYMSRV: c:\symbols\image00000001`3f6b0000.dbg\574587D664000\image00000001`3f6b0000.dbg not foundSYMSRV: https://msdl.microsoft.com/download/symbols/image00000001`3f6b0000.dbg/574587D664000/image00000001`3f6b0000.dbg not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\image00000001`3f6b0000.dbg - file not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\.exe\image00000001`3f6b0000.dbg - path not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\symbols\.exe\image00000001`3f6b0000.dbg - path not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\setup.pdb\image00000001`3f6b0000.dbg - path not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\setup.pdb\.exe\image00000001`3f6b0000.dbg - path not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\setup.pdb\symbols\.exe\image00000001`3f6b0000.dbg - path not foundDBGHELP: C:\ADE\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\Disk1\install\image00000001`3f6b0000.dbg - file not foundDBGHELP: C:\ADE\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\Disk1\install\.exe\image00000001`3f6b0000.dbg - path not foundDBGHELP: C:\ADE\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\Disk1\install\symbols\.exe\image00000001`3f6b0000.dbg - path not foundDBGHELP: image00000001`3f6b0000 missing debug info. Searching for pdb anywayDBGHELP: Can't use symbol server for image00000001`3f6b0000.pdb - no header information availableDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\image00000001`3f6b0000.pdb - file not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\exe\image00000001`3f6b0000.pdb - file not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\symbols\exe\image00000001`3f6b0000.pdb - file not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\setup.pdb\image00000001`3f6b0000.pdb - file not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\setup.pdb\exe\image00000001`3f6b0000.pdb - file not foundDBGHELP: c:\ade\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\disk1\install\setup.pdb\symbols\exe\image00000001`3f6b0000.pdb - file not foundDBGHELP: C:\ADE\bpurana\.ade\view_storage\bpurana_oui_424\oui\cd\Disk1\install\image00000001`3f6b0000.pdb - file not foundDBGHELP: image00000001`3f6b0000.pdb - file not found*** ERROR: Module load completed but symbols could not be loaded for image00000001`3f6b0000我想知道当路径中已经存在pdb时,为什么要查找dbg文件。为什么要引用image00000001`3f6b0000.pdb;当setup.pdb在符号路径中时?从哪里填充此image 文件名?编辑1:用于编译的命令: icl.exe /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN64" /D "_DEBUG" /D "_WINDOWS" /Fp".\win64\debug\setup.pch" /YX /Fo".\win64\debug\\" /Fd".\win64\debug\\" /c ..\c\runInstaller.c编辑2:这是我在exe文件上尝试CDB时看到的。似乎在中有一个image 可执行文件。 C:\Program Files\Debugging Tools for Windows (x64)>cdb.exe -c "q" C:\ADE\bpurana_oui_win\oui\cd\Disk1\install\setup.exe | grep -A 1 -i Execu* Executable search path is: ModLoad: 00007ff7`e4e10000 00007ff7`e4e74000 image00007ff7`e4e10000ICL版本是这样的:[C:\ADE\bpurana_oui_win\oui]icl /versionIntel(R) C++ Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 14.0.4.237 Build 20140805版权所有(C)1985-2014英特尔公司。版权所有。即使这样,问题仍然存在,我还需要解决其他问题吗? (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 单个src文件的目录:\>ls -ltotal 4-rw-rw-rw- 1 HP 0 63 2016-05-27 13:51 hw.cppsrc是一个简单的hellow orld:\>cat hw.cpp#include <stdio.h>void main (void){ printf("hello");}用调试信息编译:\>cl /nologo /Zi /Fe:hwdbg.exe hw.cpphw.cpp编译时没有调试信息:\>cl /nologo /Fe:hwnodbg.exe hw.cpphw.cpp为Nodbg和dbg exes在Pe头中转储调试目录的内容:\>dumpbin /nologo /headers hwdbg.exe hwnodbg.exe | grep -i -A 4 Debug* 5A220 [ 38] RVA [size] of Debug Directoryxxxx 57480732 cv 38 0005B048 59C48 Format: RSDS, {2233DB57-2608-46AF-A94C-0AB233BB333C},-- 164B0 [ 1C] RVA [size] of Debug Directoryxxxxx 57480738 coffgrp 300 000165F4 159F4在windbg中加载两个可执行文件并检查图像名称:\>cdb.exe -c "q" hwdbg.exe | grep -A 1 -i Execu*Executable search path is:ModLoad: 01070000 010d5000 hwdbg.exe:\>cdb.exe -c "q" hwnodbg.exe | grep -A 1 -i Execu*Executable search path is:ModLoad: 01320000 0133c000 image01320000 (adsbygoogle = window.adsbygoogle || []).push({});
09-10 03:48