PointerToSymbolTable :
COFF符号的文件偏移量 表,如果没有COFF符号表则为零 存在。 PE图像为0 文件,因为调试信息是 折旧。
为什么说PE图像的调试信息折旧? AFIAK,Windows中的可执行文件也可以携带调试信息,是不是这样呢?
答案 0 :(得分:1)
正如PE图像所说的调试信息折旧一样,调试符号不再直接嵌入到PE中。它存储在一个保存调试信息的.PDB文件中。此文件的格式未记录,因此您只能通过调用DbgHelp.dll中的API来从此文件中提取信息。
答案 1 :(得分:0)
请注意确定您从哪里阅读,但MSDN中的this page没有这样的警告。
您需要记住,MSDN在某种程度上是针对Microsoft的。在Microsoft-world中,coff调试信息早已被.PDB文件取代,因此当您使用Microsoft编译器时,几乎永远不会在内部获取符号可执行映像(因此PointerToSymbolTable
永远是0)。
仍有程序使用嵌入式COFF数据(例如MinGW,我相信)。