Depuración en modo mixto (C#, C++ y Visual Basic)

En los procedimientos siguientes se describe cómo habilitar la depuración del código administrado y nativo, también conocida como depuración en modo mixto. Hay dos escenarios de depuración en modo mixto:

  • La aplicación que llama a un archivo DLL está escrita en código nativo y el archivo DLL, en código administrado.

  • La aplicación que llama a un archivo DLL está escrita en código administrado y el archivo DLL, en código nativo. Para consultar un tutorial más detallado sobre este escenario, vea Tutorial: Depuración de C# y C++ en la misma sesión de depuración.

Puede habilitar los depuradores administrados y nativos en las páginas Propiedad del proyecto de la aplicación que realiza la llamada. La configuración difiere entre aplicaciones nativas y administradas.

Si no tiene acceso al proyecto de la aplicación que realiza la llamada, puede depurar el archivo DLL desde el proyecto DLL. No es necesario el modo mixto para depurar solo el proyecto DLL. Para obtener más información, vea Cómo: Depuración desde un proyecto DLL.

Nota

Es posible que los cuadros de diálogo y los comandos que se muestren difieran de los que se incluyen en este artículo, en función de los valores de configuración o de la edición de Visual Studio. Para cambiar la configuración, seleccione Herramientas>Importar y exportar configuraciones. Para obtener más información, vea Restablecer toda la configuración.

Habilitación de la depuración en modo mixto para una aplicación de llamadas nativa

  1. Seleccione el proyecto de C++ en Explorador de soluciones, haga clic en el icono Propiedades y presione Alt+Entrar, o haga clic con el botón derecho y seleccione Propiedades.

  2. En el cuadro de diálogo <Proyecto > Páginas de propiedades, expanda el nodo Propiedades de configuración y, a continuación, seleccione Depuración.

  3. Establezca el Tipo de depurador en Mixto o Automático.

  4. Seleccione Aceptar.

    Enable mixed mode debugging in C++

Habilitación de la depuración en modo mixto para una aplicación de llamadas administrada

  1. Seleccione el proyecto de C# o Visual Basic en Explorador de soluciones, seleccione el icono Propiedades y presione Alt+Entrar, o haga clic con el botón derecho y seleccione Propiedades.

  2. En el Explorador de soluciones, seleccione el nodo del proyecto de C# o Visual Basic y seleccione el icono Propiedades o haga clic con el botón derecho en el nodo del proyecto y seleccione Propiedades.

  3. Habilite la depuración de código nativo en las propiedades.

    Para C#, seleccione Depurar en el panel izquierdo, seleccione Abrir la interfaz de perfiles de inicio de depuración, después seleccione la casilla Habilitar depuración de código nativo y cierre la página de propiedades para guardar los cambios. Enable mixed mode debugging in C#

    Para Visual Basic, seleccione Depurar en el panel izquierdo, active la casilla Habilitar depuración de código nativo y cierre la página de propiedades para guardar los cambios.

    Enable mixed mode debugging in Visual Basic

    Seleccione Depurar en el panel izquierdo, active la casilla Habilitar depuración de código nativo y cierre la página de propiedades para guardar los cambios.

    Enable mixed mode debugging

    Nota:

    Para una aplicación de .NET Core en Visual Studio 2017 y Visual Studio 2019, debe usar el archivo launchSettings.json en lugar de las propiedades del proyecto para habilitar la depuración en modo mixto.