Condividi tramite


File PDB (C++)

Aggiornamento: novembre 2007

Le informazioni contenute in questo argomento sono valide per:

Edition

Visual

Autenticazione di base

C#

C++

Web Developer

Express

Argomento non applicabile Argomento non applicabile Argomento applicabile Argomento non applicabile

Standard

Argomento non applicabile

Argomento non applicabile

Argomento applicabile

Argomento non applicabile

Pro e Team

Argomento non applicabile Argomento non applicabile

Argomento applicabile

Argomento non applicabile

Legenda tabella:

Argomento applicabile

Applicabile

Argomento non applicabile

Non applicabile

Argomento valido ma comando nascosto per impostazione predefinita

Comando o comandi nascosti per impostazione predefinita.

Un file di database di programma (PDB) contiene le informazioni relative al debug e allo stato del progetto che consentono il collegamento incrementale di una configurazione di debug del programma. Un file PDB viene creato quando si esegue una generazione con il formato /ZI o /Zi (per C/C++).

In Visual C++ l'opzione /Fd assegna un nome al file PDB creato dal compilatore. Quando un progetto viene creato in Visual Studio utilizzando le creazioni guidate, l'opzione /Fd viene impostata in modo da creare un file PDB chiamato progetto.PDB.

Se l'applicazione C/C++ viene generata utilizzando un makefile e si specifica /ZI o /Zi senza /Fd, vengono generati due file PDB:

  • VC80.PDB   (o più genericamente VCx0.PDB, dove x rappresenta la versione di Visual C++) In questo file, disponibile nella stessa directory in cui si trova il makefile del progetto, vengono memorizzate tutte le informazioni di debug relative ai singoli file OBJ.

  • progetto.PDB   In questo file vengono archiviate tutte le informazioni di debug relative al file EXE. Per C/C++, questo file si trova nella sottodirectory \debug.

Ogni volta che crea un file OBJ, il compilatore C/C++ unisce le informazioni di debug nel file VCx0.PDB. Queste includono informazioni sui tipi ma non sui simboli, quali le definizioni delle funzioni. Pertanto, anche se ciascun file di origine include file di intestazione comuni, quali <windows.h>, i typedef di tali intestazioni vengono archiviati solo una volta, anziché in ciascun file OBJ.

Il linker crea il file progetto.PDB contenente informazioni di debug relative al file EXE del progetto. Il file progetto.PDB contiene non solo le informazioni sui tipi disponibili nel file VCx0.PDB, ma tutte le informazioni di debug, inclusi i prototipi di funzione. Entrambi i file PDB supportano gli aggiornamenti incrementali. Il linker incorpora inoltre il percorso del file con estensione pdb nel file con estensione exe o dll creato.

Il debugger di Visual Studio utilizza il percorso del file PDB specificato nel file EXE o DLL per individuare progetto.PDB. Se il file PDB non viene trovato in tale percorso oppure se il percorso non è valido, ad esempio perché il progetto è stato spostato in un altro computer, verrà eseguita una ricerca nel percorso contenente il file EXE, i percorsi di simboli specificati nella finestra di dialogo Opzioni (cartella Debug, nodo Simboli). Non caricherà inoltre i file PDB non corrispondenti ai file binari sottoposti a debug.

Vedere anche

Concetti

File PDB (C# e Visual Basic)

Altre risorse

Impostazioni di debug e preparazione