Condividi tramite


Eseguire il debug in modalità mista (C#, C++, Visual Basic)

Questo articolo descrive come abilitare il debug per il codice gestito e nativo insieme, noto come il debug in modalità mista . Esistono due scenari di debug in modalità mista:

  • L'app che chiama una DLL viene scritta nel codice nativo e la DLL viene gestita.

  • L'app che chiama una DLL viene scritta nel codice gestito e la DLL è nel codice nativo. Per un'esercitazione che illustra questo scenario, consulta Eseguire il debug di codice gestito e nativo.

È possibile abilitare debugger gestiti e nativi nelle proprietà delle pagine del progetto dell'app che effettua la chiamata. Le impostazioni sono diverse per le app native e gestite.

Se non si ha accesso al progetto di un'app chiamante, è possibile eseguire il debug della DLL dal progetto DLL. Non è necessaria la modalità mista per eseguire il debug. È necessario solo il progetto DLL. Per altre informazioni, vedere Come eseguire il debug da un progetto DLL.

Nota

Le finestre di dialogo e i comandi descritti in questo articolo potrebbero differire dall'esperienza, a seconda delle impostazioni o dell'edizione di Visual Studio. Per modificare le impostazioni, selezionare Strumenti>Importa ed Esporta impostazioni. Per altre informazioni, vedere Reimpostare tutte le impostazioni.

Abilitare la modalità mista per l'app per chiamate native (C++)

Per abilitare il debug in modalità mista per un'app per chiamate native in C++, seguire questa procedura:

  1. In Esplora soluzioni di Visual Studio , fare clic con il pulsante destro del mouse sul progetto C++ e selezionare Proprietà, o premere il tasto di scelta rapida Alt + INVIO. Verrà visualizzata la finestra di dialogo pagine delle proprietà>progetto<.

  2. Nella finestra di dialogo, espandere la sezione Proprietà di configurazione e selezionare la scheda Debug.

  3. Nella scheda Debugging, selezionare la proprietà Tipo di Debugger e usare l'elenco a discesa per selezionare l'opzione Auto o Mixed. Se sono disponibili più opzioni per mixed, ad esempio .NET Core e .NET Framework, scegliere l'opzione migliore per la configurazione.

    Screenshot che mostra come abilitare il debug in modalità mista per un progetto C++ in Visual Studio.

  4. Per applicare la modifica della proprietà, selezionare OK.

Abilitare la modalità mista per l'app per chiamate gestite (C# o Visual Basic)

Per abilitare il debug in modalità mista per un'app per chiamate gestite in C# o Visual Basic, seguire questa procedura:

  1. In Esplora soluzioni di Visual Studio , fare clic destro sul progetto C# o Visual Basic e selezionare Proprietà, oppure usare i tasti di scelta rapida Alt + Invio. Si apre il riquadro Proprietà .

  2. Nel riquadro Proprietà abilitare il debug in modalità mista impostando la proprietà seguente:

    codice .NET

    1. Nel menu a sinistra selezionare Debug.

    2. Nella sezione Generale, selezionare il link Apri interfaccia profili di avvio del debug. Si apre la finestra di dialogo profili di avvio.

    3. Nella finestra di dialogo, scorri per individuare la sezione Abilita il debug del codice nativo.

    4. Selezionare la proprietà Abilita il debug per il codice gestito e nativo insieme, conosciuta anche come debug in modalità mista:

      Screenshot che mostra come abilitare il debug in modalità mista per un progetto C# o Visual Basic in Visual Studio.

    5. Per applicare la modifica della proprietà, chiudere la finestra di dialogo Profili di Avvio e il riquadro Proprietà.

    codice .NET Framework

    Se si usa il codice .NET Framework senza profilo di avvio di debug, seguire questa procedura:

    1. Nel menu a sinistra selezionare Debug.

    2. Nella sezione motori del debugger, selezionare la proprietà Abilita debug del codice nativo.

      Screenshot che mostra come abilitare il debug in modalità mista per un progetto C# o Visual Basic in Visual Studio 2019.

    3. Per applicare la modifica della proprietà, chiudere il pannello Proprietà.

    1. Nel menu a sinistra selezionare Debug.

    2. Nella sezione motori del debugger selezionare la proprietà enable native code debugging (Abilita debug del codice nativo):

      Screenshot che mostra come abilitare il debug in modalità mista per un progetto C# o Visual Basic in Visual Studio 2019.

    3. Per applicare la modifica della proprietà, chiudere il riquadro Proprietà .

    Nota

    Per un'app .NET Core in Visual Studio 2017 e Visual Studio 2019, è necessario usare il file launchSettings.json anziché le proprietà del progetto per abilitare il debug in modalità mista.