Impostazioni di progetto per una configurazione di debug C++

È possibile modificare le impostazioni di progetto per una configurazione di debug C o C++ nella finestra di dialogo Pagine delle proprietà, come descritto in Procedura: impostare le configurazioni di debug e rilascio. Nelle tabelle riportate di seguito sono indicate le sezioni della finestra di dialogo Pagine delle proprietà in cui sono disponibili le impostazioni correlate al debugger.

Specificare il debugger da utilizzare nella casella di riepilogo Debugger da avviare. Le proprietà visualizzate variano in funzione del debugger selezionato.

Ogni volta che si salva la soluzione, ciascuna impostazione delle proprietà di debug viene scritta e salvata automaticamente nel file della soluzione (.vcxproj.user) specifico dell'utente.

Cartella Proprietà di configurazione (categoria Debug)

Impostazione

Oggetto di descrizione

Debugger da avviare

Specifica il debugger da eseguire. È possibile scegliere tra le seguenti opzioni:

  • Debugger Windows locale

  • Debugger Windows remoto

  • Debugger servizi Web

  • Debugger cluster MPI

  • Debugger browser Web

Comando (debugger Windows locale)

Specifica il comando per l'avvio del programma di cui si esegue il debug sul computer locale.

Comando remoto (debugger Windows remoto)

Comando applicazione (debugger cluster MPI)

Percorso del file .exe nel computer remoto. Immettere il percorso come se lo si immettesse sul computer remoto.

Argomenti del comando (debugger Windows locale e debugger Windows remoto)

Argomenti applicazione (debugger cluster MPI)

  • Specifica gli argomenti relativi al comando indicato in precedenza.

È possibile utilizzare i seguenti operatori di reindirizzamento:

< file

Legge stdin dal file.

> file

Scrive stdout nel file.

>> file

Accoda stdout al file.

2> file

Scrive stderr nel file.

2>> file

Accoda stderr al file.

2> &1

Invia l'output di stderr (2) nello stesso percorso di stdout (1).

1> &2

Invia l'output di stdout (1) nello stesso percorso di stderr (2).

Nella maggior parte dei casi, questi operatori possono essere utilizzati solo con le applicazioni console.

Cartella di lavoro

Specifica la cartella di lavoro del programma di cui viene eseguito il debug, relativamente alla directory del progetto in cui si trova il file EXE. Se non specificata, la cartella di lavoro corrisponde a quella del progetto. Per il debug remoto, la cartella di progetto sarà sul server remoto.

Connetti (debugger Windows locale e debugger Windows remoto)

Specifica se avviare l'applicazione o connettersi a essa. L'impostazione predefinita è No.

Nome server remoto (debugger Windows remoto e debugger cluster MPI)

Specifica il nome di un computer diverso da quello di sviluppo nel quale si desidera eseguire il debug di un'applicazione oppure un nome di server Msvsmon. Questa opzione può essere selezionata anche dalla finestra di dialogo Processi. Per ulteriori informazioni, vedere Selezione di un computer remoto. Se si specifica il nome del computer, è anche necessario definire il tipo di connessione in Connessione.

La macro di compilazione RemoteMachine viene impostata sul valore di questa proprietà. Per ulteriori informazioni, vedere Macro per comandi e proprietà di compilazione.

Connessione (debugger Windows remoto e debugger cluster MPI)

Consente di passare tra tipi di connessione standard e senza autenticazione per il debug remoto. Specificare il nome di un computer remoto nella casella Nome server remoto. I tipi di connessione includono:

  • Remoto con autenticazione di Windows

  • Remoto senza autenticazione (solo nativo)

Nota   Il debug remoto senza autenticazione può causare la vulnerabilità del computer remoto alle violazioni della sicurezza. La modalità con l'autenticazione di Windows garantisce un maggiore livello di sicurezza.

Per ulteriori informazioni, vedere Installazione del debug remoto.

URL HTTP (debugger servizi Web e debugger browser Web)

Specifica l'URL in cui si trova il progetto sottoposto a debug.

Tipo debugger

Specifica il tipo di debugger da utilizzare: Solo nativo, Solo gestito, Misto, Automatico (impostazione predefinita) o Script.

  • L'opzione Solo nativo è destinata a codice C++ non gestito.

  • L'opzione Solo gestito è destinata a codice che viene eseguito in Common Language Runtime (codice gestito).

  • L'opzione Misto richiama debugger sia per codice gestito che per codice non gestito.

  • L'opzione Automatico determina il tipo di debugger in base alle informazioni del compilatore e del file EXE.

  • Lo Script richiama un debugger per gli script.

Ambiente (debugger Windows locale)

Specifica le variabili di ambiente per il programma sottoposto a debug. Utilizzare la sintassi standard delle variabili di ambiente (ad esempio PATH="%SystemRoot%\..."). Queste variabili eseguono l'override dell'ambiente di sistema oppure vengono unite all'ambiente di sistema in base all'impostazione di Unisci ambiente. Quando si fa clic nella colonna delle impostazioni, viene visualizzato "Edit..." con i puntini di sospensione. Fare clic su quel collegamento per modificare variabili di ambiente.

Unisci ambiente (debugger Windows locale)

Determina se le variabili specificate nella casella Ambiente verranno unite all'ambiente definito dal sistema operativo. L'impostazione predefinita è Sì.

Debug SQL (tutti ad eccezione del debugger cluster MPI)

Attiva il debug di routine SQL dall'applicazione Visual C++. L'impostazione predefinita è No.

Cartella C/C++ (categoria Generale)

Impostazione

Oggetto di descrizione

Formato informazioni di debug (/Z7, /Zd, Zi, /ZI)

Specifica il tipo di informazioni di debug da creare per il progetto.

In base all'opzione predefinita (/ZI), viene creato un database di programma (PDB) in un formato compatibile con Modifica e continuazione. Per ulteriori informazioni, vedere /Z7, /Zd, /Zi, /ZI (Formato informazioni di debug).

Per ulteriori informazioni, vedere File PDB e File DBG.

Cartella C/C++ (categoria Ottimizzazione)

Impostazione

Oggetto di descrizione

Ottimizzazione

Specifica se il codice generato dal compilatore deve essere ottimizzato. Per effetto dell'ottimizzazione, il codice eseguito viene modificato. Poiché il codice ottimizzato non corrisponde più al codice sorgente, il debug risulterà difficile.

In base all'opzione predefinita (Disabilitato (/0d), l'ottimizzazione non viene eseguita. È possibile disattivare l'ottimizzazione durante la fase di sviluppo e attivarla quando si crea la versione di produzione del codice.

Cartella Linker (categoria Debug)

Impostazione

Oggetto di descrizione

Genera informazioni di debug (/DEBUG)

Comunica al linker di includere informazioni di debug con il formato specificato da /Z7, /Zd, Zi o /ZI.

Genera file del database di programma (/PDB:nome)

Specificare in questa casella il nome di un file PDB. Selezionare ZI o /Zi per Formato informazioni di debug.

Rimuovi simboli privati (/PDBSTRIPPED:filename)

Specificare in questa casella il nome di un file PDB, se non si desidera includere simboli privati nel file PDB. Questa opzione consente di creare un secondo database di programma (PDB) quando si compila l'immagine del programma con una qualsiasi delle opzioni del compilatore o del linker che generano un file PDB, ad esempio /DEBUG, /Z7, /Zd. O /Zi. Nel secondo file PDB vengono omessi i simboli che non si desidera fornire ai clienti. Per ulteriori informazioni, vedere /PDBSTRIPPED (Strip Private Symbols).

Genera file map (/MAP)

Comunica al linker di generare un file map durante il collegamento. L'impostazione predefinita è No. Per ulteriori informazioni, vedere /MAP (Generate Mapfile).

Nome file map(/MAP:name)

Se si sceglie Genera file map, è possibile specificare il file map in questa casella. Per ulteriori informazioni, vedere /MAP (Generate Mapfile).

Esportazioni map (/MAPINFO:EXPORTS)

Include le funzioni esportate nel file map. L'impostazione predefinita è No. Per ulteriori informazioni, vedere /MAPINFO (Include Information in Mapfile).

Assembly Debuggable (/ASSEMBLYDEBUG)

Specifica le impostazioni per l'opzione /ASSEMBLYDEBUG del linker. I valori possibili sono i seguenti:

  • Nessun attributo Debuggable creato.

  • Controllo di runtime e ottimizzazioni disabilitate (/ASSEMBLYDEBUG). Si tratta dell'impostazione predefinita.

  • Nessun controllo di runtime e ottimizzazioni attivate (/ASSEMBLYDEBUG:DISABLE).

  • <eredita da padre o da impostazioni predefinite progetto>.

  • Per ulteriori informazioni, vedere /ASSEMBLYDEBUG (Add DebuggableAttribute).

Queste impostazioni possono essere modificate a livello di codice nella cartella Proprietà di configurazione (categoria Debug) mediante l'interfaccia Microsoft.VisualStudio.VCProjectEngine.VCDebugSettings. Per ulteriori informazioni, vedere VCDebugSettings.

Vedere anche

Riferimenti

/ASSEMBLYDEBUG (Add DebuggableAttribute)

Altre risorse

Debug del codice nativo

Impostazioni di debug e preparazione

Creazione e gestione di progetti Visual C++

Macro per comandi e proprietà di compilazione