我正在使用WinDbg进行调试器会话。我键入lm
命令,它显示已加载的模块,但我不太明白(导出符号)在下面是什么意思?
048c0000 0550c000 Db (export symbols) Db.dll
05520000 05535000 Graph (export symbols) Graph.dll
我原以为它会说符号没有加载或加载或延迟,但它不是那个。在这种情况下(出口符号)表示什么?
答案 0 :(得分:3)
导出的符号表示没有加载PDB文件,而是从二进制文件(EXE,DLL)读取符号。二进制文件具有导出表。该表用于解析符号。
导出表是PE文件格式的一项功能。如果您想查看它,可以使用CFF Explorer。如果您需要样本二进制文件,请使用ntdll.dll
中的%windir%\system32
:
关于信息量,它按此顺序增加:
您可能还会看到“延迟”符号,这意味着WinDbg还不知道,因为它还没有尝试加载它们。如果您想要删除延迟符号,请使用ld*;.reload
。