我有符号文件的问题。我尝试了符号文件路径并设置路径如下:
srv*c:\symbols*http://msdl.microsoft.com/download/symbols;C:\Users\myuser\Desktop\driver2\objchk_win7_x86\i386
但后来我将其更改为以下内容:
srv*c:\symbols*http://msdl.microsoft.com/download/symbols;C:\Users\myuser\Desktop\mydriver\objchk_win7_x86\i386
我在路径中用 mydriver 更改了 driver2:这是我的驱动程序的 .pdb 文件所在的路径。问题是 .sympath 打印正确的路径,如下所示:
kd> .sympath
Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbols;C:\Users\myuser\Desktop\mydriver\objchk_win7_x86\i386
Expanded Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbols;c:\users\myuser\desktop\mydriver\objchk_win7_x86\i386
但是仍然找不到驱动程序的符号。如果我运行 .reload 命令,我们可以看到 WinDbg 在 driver2/ 目录而不是 mydriver/ 目录中寻找 .pdb。
kd> .reload /f mydriver.sys
SYMSRV: c:\symbols\mydriver.pdb\3D655E533B0449A38D7AB0AF637CE9201\mydriver.pdb not found
SYMSRV: http://msdl.microsoft.com/download/symbols/mydriver.pdb/3D655E533B0449A38D7AB0AF637CE9201/mydriver.pdb not found
SYMSRV: c:\users\myuser\desktop\mydriver\objchk_win7_x86\i386\mydriver.pdb\3D655E533B0449A38D7AB0AF637CE9201\mydriver.pdb not found
DBGHELP: c:\users\myuser\desktop\driver2\objchk_win7_x86\i386\mydriver.pdb - file not found
*** ERROR: Module load completed but symbols could not be loaded for mydriver.sys
DBGHELP: mydriver - no symbols loaded
我已经删除了所有工作区,关闭了 WinDbg,重新启动了 Windows,但 driver2/ 条目仍然存在:它必须在默认工作区的缓存中或某处。如何删除 WinDbg 的整个个人设置,包括那些缓存,以便我可以重新启动 WinDbg 并使用 driver2/ 路径并使其使用 mydriver/。
我也可以通过将 mydriver/ 目录重命名为 driver2/ 来解决问题,但我不想这样解决问题。我想了解发生了什么并尽我所能解决它。