Jaki jest format (schemat) of.NET pliki PDB?

Jaki jest format (schemat) plików. NET PDB? Chciałbym przetworzyć informacje z tych plików, aby móc wyświetlać poprawne linie kodu (numery linii) w aplikacji debugującej.

Author: Daniel Trebbien, 2009-02-09

3 answers

Dbghelp library (simply):

Http://msdn.microsoft.com/en-us/library/ms679309 (VS.85). aspx

DIA SDK (bardziej kompleksowe, ale COM):

Http://msdn.microsoft.com/en-us/library/x93ctkx8 (VS.80). aspx

Sam używałem dbghelp i tylko dla natywnych binariów. Znalazłem to dość łatwe w użyciu, jeśli wszystko, co musisz zrobić, to przekonwertować adres na nazwę pliku i numer linii. Nie mogę powiedzieć, czy to działa również dla zarządzanych aplikacji, ale jeśli nie, to wygląda na to, że DIA SDK ma.

Jeśli chodzi o format PDB, to cytuję stronę DIA, "ponieważ format .plik pdb generowany przez narzędzia postcompilera podlega ciągłej rewizji, ujawnianie formatu jest niepraktyczne". Więc to by było na tyle...

 9
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-02-08 23:30:30

Jak wyjaśniam w tym blogu , Projekt CCI właśnie poszedł open source i po raz pierwszy społeczność ma 100% zarządzany framework do odczytu plików PDB.

 7
Author: Patrick from NDepend team,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-15 21:45:51

Przyjrzałem się narzędziu help / debug help API http://msdn.microsoft.com/en-us/magazine/cc301692.aspx?

 2
Author: Sandeep Datta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-02-08 22:59:02