Qual è il formato (schema) dei file PDB .NET? Mi piacerebbe analizzare le informazioni da questi file in modo da poter visualizzare le linee corrette di codice (numeri di riga) in un'applicazione di debug.Qual è il formato (schema) dei file PDB .NET?
risposta
biblioteca DbgHelp (semplice):
http://msdn.microsoft.com/en-us/library/ms679309(VS.85).aspx
DIA SDK (più completo, ma COM):
http://msdn.microsoft.com/en-us/library/x93ctkx8(VS.80).aspx
Ho usato solo DbgHelp me stesso, e solo per nativo binari. L'ho trovato abbastanza facile da usare, se tutto quello che devi fare è convertire l'indirizzo in nome file e numero di riga. Non posso dire se funziona anche per le app gestite, ma se non lo è, sembra che l'SDK di DIA sia.
Come per il formato PDB, per citare la pagina DIA, "Poiché il formato del file .pdb generato dagli strumenti del post-compilatore subisce una revisione costante, l'esposizione del formato è poco pratica". Quindi, suppongo che ...
hanno dato un'occhiata all'utility help/debug help API http://msdn.microsoft.com/en-us/magazine/cc301692.aspx?
Come ho spiegato in questo blog post, il progetto CCI è appena diventato open source e per la prima volta la comunità dispone di un framework gestito al 100% per leggere i file PDB.