我正在嘗試讀取PDB文件的頭文件,以便知道它是否與我的EXE文件相匹配。
有沒有一種很好的方式來讀取PDB文件的簽名(可能使用dbgHelp)?
我需要獲取PDB文件中標題的字段,以指示在哪個版本中創建了PDB。 謝謝:)在C++中讀取PDB頭文件
1
A
回答
1
我不相信Debug Help API或Debug Interface Access SDK提供訪問任何信息,可以解決您的問題。關於使用其中任何一種來檢測構建信息的唯一方法是檢查鏈接時包含的對象文件的路徑。
PDB文件確實包含有關在命令行上傳遞的用於編譯目標文件和鏈接(libs,dll's,exe's)的選項的信息,這可能是您正在查找的內容。不幸的是,我知道沒有記錄的方式來訪問它。它可能深藏在PDB文件中的其中一個表格中,但我無法找到任何訪問它的參考。
也就是說,如果您提供的信息是絕對必要的,並且您願意處理一些挫折,請查看PDB Parser by Sven Boris Schreiber。它包含許多有用的信息,雖然它可能不支持較新的PDB版本
+0
John Robbins的這篇博客文章也可能包含以下信息:http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/11/pdb-files-what-every-developer-must- know.aspx –
0
您可以使用the Pdb Inspector tool來查看您的PDB的GUID和其他基本細節。此工具使用Debug Interface Access (DIA)
相關問題
- 1. 在C中讀取bmp頭文件
- 2. 如何在C++中讀取文件頭
- 3. 在C中讀取文件讀取#
- 4. AU文件的讀取頭 - C
- 5. 閱讀一個.pdb文件
- 6. 在C中讀取文件
- 7. 在文件中讀取C++
- 8. 在C中讀取文件
- 9. 在C++中讀取文件
- 10. curl:從文件中讀取頭文件
- 11. 從.cpp文件中的頭文件讀取枚舉(C++)
- 12. 在PDB文件
- 13. 讀取/寫入文件頭
- 14. 在C/C++中讀取OpenOffice文件
- 15. 在C++中讀取文本文件
- 16. 使用java讀取文件頭文件
- 17. 讀取WAVE文件的標頭文件
- 18. 從文件中讀取。 C++
- 19. 從C++中讀取文件
- 20. c:從文件中讀取
- 21. 文件讀取在C++
- 22. 讀取文件在c#.net
- 23. C#從讀取文本文件中讀取二進制文件
- 24. C#讀取文件
- 25. 從PDB中提取座標文件
- 26. 如何從PDB文件中提取鏈?
- 27. 從Excel文件讀取用方括號中的頭C#
- 28. 試圖讀取C#中的MJPEG頭文件
- 29. C#make文件從只讀中讀取
- 30. OpenMP的文件中讀取在C++
是的,那是我的意思。我試着寫我自己的小調試器。 – Idov
如果它是爲特定的BUILD生成的。 – Idov
爲二進制文件生成的每個pdb文件都具有嵌入在二進制文件以及pdb文件中的guid。請看看DIA sdk的get_guid函數。 –