Condividi tramite


Procedura: gestire gli errori di connessione

Aggiornamento: novembre 2007

Le informazioni contenute in questo argomento sono valide per:

Edition

Visual Basic

C#

C++

Web Developer

Express

Argomento non applicabile Argomento non applicabile Argomento non applicabile Argomento non applicabile

Standard

Argomento applicabile Argomento applicabile

Argomento applicabile

Argomento applicabile

Pro e Team

Argomento applicabile Argomento applicabile

Argomento applicabile

Argomento 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.

I processi in esecuzione a cui il debugger di Visual Studio tenta di connettersi possono contenere uno o più tipi di codice. I tipi di codice a cui il debugger può connettersi sono nativo, gestito, T-SQL e di script. Questi tipi di codice vengono visualizzati e selezionati nella finestra di dialogo Connetti a processo.

Nota:

Affinché il debugger possa connettersi a codice gestito scritto in C++, è necessario che venga generato l'elemento DebuggableAttribute. È possibile aggiungere automaticamente questo elemento al codice mediante il collegamento all'opzione del linker /ASSEMBLYDEBUG.

In alcuni casi il debugger riesce a connettersi a un tipo di codice ma non a un altro. Questa situazione può verificarsi quando si tenta di stabilire una connessione a un processo in esecuzione in un computer remoto, nel quale potrebbero essere stati installati i componenti per il debug remoto solo per alcuni tipi di codice. Può inoltre verificarsi quando si tenta di stabilire una connessione a due o più processi per il debug diretto di un database. Durante il debug SQL è supportata esclusivamente la connessione a un singolo processo.

Se il debugger è in grado di connettersi solo ad alcuni tipi di codice, verrà visualizzato un messaggio simile al seguente:

The requested attach was not completed successfully.
Program types successfully attached are:
Common Language Runtime
Native (Win32)
Microsoft T_SQL
Program types that failed to attach are:
Script

Se il debugger riesce a connettersi ad almeno un tipo di codice, è possibile procedere con il debug del processo. Sarà possibile eseguire il debug solo dei tipi di codice con i quali è stata stabilita una connessione. Il messaggio di esempio sopra riportato segnala che non è stato possibile stabilire una connessione al tipo di codice di script. Non sarà quindi possibile eseguire il debug del codice di script nel processo. Il codice di script del processo verrà comunque eseguito, ma non sarà possibile impostare punti di interruzione, visualizzare dati o eseguire altre operazioni di debug nello script.

Se si desidera ottenere informazioni più specifiche sulla causa che ha impedito al debugger di connettersi a un tipo di codice, è possibile provare a ripetere la connessione solo a quel tipo di codice.

Per ottenere informazioni specifiche sulla causa dell'errore di connessione a un tipo di codice

  1. Disconnettersi dal processo. A tale scopo, scegliere Disconnetti tutto dal menu Debug.

  2. Riconnettersi al processo, selezionando un solo tipo di programma.

    1. Nella finestra di dialogo Connetti a processo selezionare il processo nell'elenco Processi disponibili.

    2. Fare clic su Seleziona.

    3. Nella finestra di dialogo Seleziona tipo di codice selezionare il pulsante di opzione Esegui il debug di questi tipi di codice e il tipo di codice per cui si è verificato il problema di connessione. Deselezionare tutti gli altri codici.

    4. Scegliere OK. La finestra di dialogo Seleziona tipo di codice verrà chiusa.

    5. Nella finestra di dialogo Connetti a processo scegliere Connetti.

    La connessione non verrà eseguita e verrà visualizzato un messaggio di errore specifico.

Vedere anche

Altre risorse

Connessione a processi in esecuzione