Procedura: eseguire l'istruzione Just My Code

Le informazioni contenute in questo argomento sono valide per:

Edizione

Visual Basic

C#

F#

C++

Web Developer

Express

Argomento applicabile Argomento applicabile

Argomento applicabile

Solo gestito

Argomento applicabile

Pro, Premium e Ultimate

Argomento applicabile Argomento applicabile

Argomento applicabile

Solo gestito

Argomento applicabile

In alcuni casi è possibile che, durante il debug, si desideri vedere solo il codice scritto personalmente e ignorarne altro, come le chiamate di sistema. Questa operazione può essere eseguita con il debug Just My Code, che nasconde il codice non utente in modo che non sia presente nelle finestre del debugger. Durante l'esecuzione, il debugger scorre, un'istruzione alla volta, il codice non utente, ma non si arresta.

Per distinguere il codice utente da quello non utente, Just My Code valuta tre elementi: File DBG, file PDB e ottimizzazione.

In una build di debug standard, l'ottimizzazione viene disattivata e per tutti i moduli vengono creati simboli di debug. Quando si esegue una build di debug, questi moduli vengono considerati codice utente. Se viene chiamata una funzione di libreria ottimizzata e non si dispone di simboli di debug, tuttavia, questa non verrà considerata codice utente. Just My Code impedisce l'interruzione dell'esecuzione nei punti d'interruzione nel codice delle librerie, che non è in genere codice di cui si desidera eseguire il debug. Nella finestra Punti di interruzione, i punti d'interruzione verranno visualizzati con l'icona di disattivazione.

Per visualizzare tutto il codice e interrompere l'esecuzione in tutti i punti d'interruzione, è possibile disattivare il debug Just My Code utilizzando la finestra di dialogo Opzioni.

Anche tre attributi influiscono sul codice considerato My Code dal debugger: DebuggerNonUserCodeAttribute indica al debugger che il codice al quale è applicato non è My Code. DebuggerHiddenAttribute nasconde il codice al debugger, anche se Just My Code è disattivato. DebuggerStepThroughAttribute indica al debugger di eseguire un'istruzione alla volta il codice a cui viene applicato, anziché eseguire tutto il codice.

Quando Just My Code è attivato, è possibile scegliere Interrompi dal menu Debug e interrompere l'esecuzione in un punto in cui non è presente codice My Code da visualizzare. In tal caso, non viene visualizzato codice. Inoltre, se si sceglie un comandodi esecuzione, si passerà alla riga di codice utente successiva.

Le istruzioni di interruzione a livello di codice, ad esempio le istruzioni Stop di Visual Basic, vengono gestite in modo diverso. Il debugger si interrompe sempre con queste istruzioni, anche quando Just My Code è attivato. In questa situazione, il codice non utente è visualizzato anziché nascosto, ma l'esecuzione porterà fuori dal codice non utente alla riga di codice utente successiva.

Nota

Just My Code non è supportato per progetti per dispositivi.

Per abilitare o disabilitare il debug Just My Code

  1. Scegliere Opzioni dal menu Strumenti.

  2. Nella finestra di dialogo Opzioni aprire il nodo Debug e scegliere Generale.

  3. Selezionare o deselezionare Attiva Just My Code.

Vedere anche

Riferimenti

DebuggerNonUserCodeAttribute

DebuggerHiddenAttribute

DebuggerStepThroughAttribute

Concetti

Controllo dell'esecuzione