File di simboli

In genere, le informazioni di debug vengono archiviate in un file di simboli separato dall'eseguibile. L'implementazione di queste informazioni di debug è cambiata nel corso degli anni e la documentazione seguente fornirà indicazioni su queste diverse implementazioni.

File PDB

Tutte le versioni moderne dei compilatori Microsoft archiviano informazioni di debug su un eseguibile compilato in un file di database di programma separato (con estensione pdb). Questo file viene comunemente definito PDB. I dati vengono archiviati in un file separato dall'eseguibile per limitare le dimensioni del file eseguibile, risparmiando spazio di archiviazione su disco e riducendo il tempo necessario per caricare i dati. Questa metodologia consente inoltre di distribuire il file eseguibile senza divulgare queste informazioni significative che potrebbero rendere il programma più semplice da invertire.

Per creare un file PDB, compilare il file eseguibile con informazioni di debug in base alle istruzioni per gli strumenti di compilazione.

L'API DbgHelp è in grado di usare i PDB per ottenere le informazioni seguenti.

  • publics and export
  • simboli globali
  • simboli locali
  • dati di tipo
  • file di origine
  • numeri di riga

File DBG e informazioni di debug incorporate

Le versioni precedenti del set di strumenti Microsoft usavano per incorporare le informazioni di debug nel file eseguibile, ma normalmente veniva rimosso in un file separato con estensione dbg. Questo file è comunemente noto come file DBG . I file DBG usano lo stesso formato di file PE dei file eseguibili.

Il supporto dell'API DbgHelp per i gruppi di disponibilità del database e le informazioni di debug incorporate è limitato e include quanto segue.

  • publics and export
  • simboli globali