Depuración remota de un proyecto de C++ en Visual Studio

Para depurar una aplicación de Visual Studio en otro equipo, instale y ejecute las herramientas remotas en el equipo donde va a implementar la aplicación, configure el proyecto que va a conectar al equipo remoto desde Visual Studio y, a continuación, implemente y ejecute la aplicación.

Remote debugger components

Para obtener información sobre la depuración remota de Aplicaciones de Windows universales (UWP), vea Depuración de un paquete de aplicaciones instalado.

Requisitos

El depurador remoto se admite con Windows 7 y versiones más recientes y las versiones de Windows Server a partir de Windows Server 2008 Service Pack 2. Para obtener una lista completa de los requisitos, vea Requisitos.

Nota

No se admite la depuración entre dos equipos conectados a través de un proxy. La depuración a través de una conexión de latencia alta o de ancho de banda bajo, como Internet mediante acceso telefónico o Internet a través de países o regiones, no se recomienda y puede producir un error o ser inaceptablemente lenta.

Descarga e instalación de las herramientas remotas

En el dispositivo o servidor remoto en el que desea depurar, en lugar de en el equipo de Visual Studio, descargue e instale la versión correcta de las herramientas remotas desde los vínculos de la tabla siguiente.

  • Descargue las herramientas remotas más recientes para su versión de Visual Studio. La última versión de las herramientas remotas es compatible con versiones anteriores de Visual Studio, pero las versiones anteriores de las herramientas remotas no son compatibles con versiones posteriores de Visual Studio. (Por ejemplo, si usa Visual Studio 2019, descargue la actualización más reciente de las herramientas remotas para Visual Studio 2019. En este escenario, no descargue las herramientas remotas para Visual Studio 2022).
  • Descargue las herramientas remotas con la misma arquitectura que el equipo en el que las va a instalar. Por ejemplo, si desea depurar una aplicación de 32 bits en un equipo remoto que ejecuta un sistema operativo de 64 bits, instale las herramientas remotas de 64 bits.
  • Si depura de forma remota una aplicación ARM64EC en un dispositivo ARM64, instale las herramientas remotas de ARM64 y, a continuación, inicie el depurador remoto x64 que se instala con esas herramientas. Esto se encuentra en: Archivos de programa (x86)\Microsoft Visual Studio<versión>\Common7\IDE\Remote Debugger\x64.
Versión Vínculo Notas
Visual Studio 2022 Herramientas remotas Compatible con todas las versiones de Visual Studio 2022. Descargue la versión que coincida con el sistema operativo del dispositivo (x86, x64 o ARM64). En versiones anteriores de Windows Server, consulte Desbloquear la descarga de archivos para obtener ayuda con la descarga de herramientas remotas.
Visual Studio 2019 Herramientas remotas Compatible con todas las versiones de Visual Studio 2019. Descargue la versión que coincida con el sistema operativo del dispositivo (x86, x64 o ARM64). En versiones anteriores de Windows Server, consulte Desbloquear la descarga de archivos para obtener ayuda con la descarga de herramientas remotas.
Visual Studio 2017 Herramientas remotas Compatible con todas las versiones de Visual Studio 2017. Descargue la versión que coincida con el sistema operativo del dispositivo (x86, x64 o ARM64). En Windows Server, vea Desbloquear la descarga del archivo para obtener ayuda con la descarga de las herramientas remotas.
Visual Studio 2015 Herramientas remotas Las Herramientas remotas para Visual Studio 2015 están disponibles en My.VisualStudio.com. Si se le solicita, únase al programa gratuito Visual Studio Dev Essentials o inicie sesión con su identificador de suscripción de Visual Studio. En Windows Server, vea Desbloquear la descarga del archivo para obtener ayuda con la descarga de las herramientas remotas.
Visual Studio 2013 Herramientas remotas Página de descarga en la documentación de Visual Studio 2013
Visual Studio 2012 Herramientas remotas Página de descarga de la documentación de Visual Studio 2012
Versión Vínculo Notas
Visual Studio 2019 Herramientas remotas Compatible con todas las versiones de Visual Studio 2019. Descargue la versión que coincida con el sistema operativo del dispositivo (x86, x64 o ARM64). En Windows Server, vea Desbloquear la descarga del archivo para obtener ayuda con la descarga de las herramientas remotas. Para obtener la última versión de las herramientas remotas, abra el documento de Visual Studio 2022.
Visual Studio 2017 Herramientas remotas Compatible con todas las versiones de Visual Studio 2017. Descargue la versión que coincida con el sistema operativo del dispositivo (x86, x64 o ARM64). En Windows Server, vea Desbloquear la descarga del archivo para obtener ayuda con la descarga de las herramientas remotas.
Visual Studio 2015 Herramientas remotas Las Herramientas remotas para Visual Studio 2015 están disponibles en My.VisualStudio.com. Si se le solicita, únase al programa gratuito Visual Studio Dev Essentials o inicie sesión con su identificador de suscripción de Visual Studio. En Windows Server, vea Desbloquear la descarga del archivo para obtener ayuda con la descarga de las herramientas remotas.
Visual Studio 2013 Herramientas remotas Página de descarga en la documentación de Visual Studio 2013
Visual Studio 2012 Herramientas remotas Página de descarga de la documentación de Visual Studio 2012

Puede ejecutar el depurador remoto mediante la copia de msvsmon.exe en el equipo remoto, en lugar de instalar las herramientas remotas. Sin embargo, el Asistente para configuración de Remote Debugger (rdbgwiz.exe) solo está disponible cuando se instalan las herramientas remotas. Es posible que tenga que usar el Asistente para configuración si desea ejecutar el depurador remoto como un servicio. Para más información, vea (Opcional) Configuración del depurador remoto como servicio.

Nota

  • Para depurar aplicaciones de Windows 10 o versiones posteriores en dispositivos ARM, use ARM64, que está disponible con la última versión de las herramientas remotas.
  • Para depurar aplicaciones de Windows 10 en dispositivos Windows RT, use ARM, que solo está disponible en la descarga de las herramientas remotas de Visual Studio 2015.

Sugerencia

En algunos escenarios, puede ser más eficaz ejecutar el depurador remoto desde un recurso compartido de archivos. Para obtener más información, vea Ejecución del depurador remoto desde un recurso compartido de archivos.

Configurar el depurador remoto

  1. En el equipo remoto, busque e inicie Remote Debugger en el menú Inicio.

    Si no tiene permisos administrativos en el equipo remoto, haga clic con el botón derecho en la aplicación Remote Debugger y seleccione Ejecutar como administrador. En caso contrario, solo debe iniciarlo de la forma habitual.

    Si tiene previsto realizar una asociación a un proceso que se ejecuta como administrador o se ejecuta en una cuenta de usuario diferente (como IIS), haga clic con el botón derecho en la aplicación Remote Debugger y seleccione Ejecutar como administrador. Para obtener más información, vea Ejecución del depurador remoto como administrador.

  2. La primera vez que inicies el depurador remoto (o antes de haberlo configurado), aparecerá el asistente de configuración de depuración remota.

    En la mayoría de los escenarios, elija Siguiente hasta que llegue a la página Configurar firewall de Windows del asistente.

    Screenshot of remote debugger configuration.

    Screenshot of remote debugger configuration.

    Si la API de servicios web de Windows no está instalada, lo que sucede solo en Windows Server 2008 R2, seleccione el botón Instalar.

  3. Seleccione al menos un tipo de red en el que desee usar las herramientas remotas. Si los equipos están conectados a través de un dominio, debe elegir el primer elemento. Si los equipos están conectados a través de un grupo de trabajo o un grupo en el hogar, elija el segundo o tercer elemento según corresponda.

    A continuación, seleccione Finalizar para iniciar el depurador remoto.

    A continuación, seleccione Configurar depuración remota para iniciar el depurador remoto.

  4. Cuando se completa la configuración, aparecerá la ventana Remote Debugger.

    Screenshot of remote debugger window

    Screenshot of remote debugger window

    El depurador remoto ahora está esperando una conexión. Use el nombre del servidor y el número de puerto que se muestran para establecer la configuración de conexión remota en Visual Studio.

Para detener el depurador remoto, seleccione Archivo>Salir. Puede reiniciarlo desde el menú Inicio o desde la línea de comandos:

<Remote debugger installation directory>\msvsmon.exe

Nota

Si tiene que agregar permisos para usuarios adicionales, cambiar el modo de autenticación o el número de puerto para el depurador remoto, vea Configuración del depurador remoto.

Depuración remota de un proyecto de C++

En el procedimiento siguiente, la ruta de acceso del proyecto es C:\remotetemp y el nombre del equipo remoto es MySurface.

  1. Cree una aplicación de consola de C++ denominada CppConsoleApp

  2. Establezca un punto de interrupción en algún lugar de la aplicación que esté fácilmente alcanzable, por ejemplo, en CppConsoleApp.cpp, en la función main .

  3. En el Explorador de soluciones, haga clic con el botón derecho en el proyecto y seleccione Propiedades. Abra la pestaña Depuración.

  4. Establezca el Depurador para iniciar en Depurador remoto de Windows.

    Screenshot of the Debugging tab in the Visual Studio Solution Explorer Properties. The Debugger to launch property is set to Remote Windows Debugger.

  5. Realice los siguientes cambios de las propiedades:

    Parámetro Valor
    Comando remoto C:\remotetemp\CppConsoleApp.exe
    Directorio de trabajo C:\remotetemp
    Nombre de servidor remoto MySurface:portnumber
    Conexión Remoto con autenticación de Windows
    Tipo de depurador Solo nativo
    Directorio de implementación C:\remotetemp
    Archivos adicionales para implementar $(ProjectDir)\data

    Si implementa carpetas adicionales y desea que todos los archivos de una carpeta se implementen en la misma carpeta, especifique un nombre de carpeta.

    Para obtener más información sobre las propiedades, vea Configuración del proyecto para una configuración de depuración de C++.

  6. En el Explorador de soluciones, haga clic con el botón derecho en la solución y elija Administrador de configuración.

  7. Para la configuración de Depurar, active la casilla Implementar.

    Screenshot of the Configuration Manager in the Visual Studio Solution Explorer. The Debug configuration is selected, and Deploy is checked.

  8. Inicie la depuración (Depurar > Iniciar depuración o presione F5).

  9. El archivo ejecutable se implementa automáticamente en el equipo remoto.

  10. Si se le solicita, escriba las credenciales de red para conectarse a la máquina remota.

    Las credenciales necesarias son específicas de la configuración de seguridad de la red. Por ejemplo, en un equipo de dominio, puede elegir un certificado de seguridad o escribir su nombre de dominio y contraseña. En un equipo que no sea de dominio, puede escribir el nombre de la máquina y un nombre de cuenta de usuario válido, como MySurface\name@something.com, junto con la contraseña correcta.

  11. En el equipo de Visual Studio, verá que la ejecución se detiene en el punto de interrupción.

    Sugerencia

    De manera alternativa, puede implementar los archivos como un paso independiente. En el Explorador de soluciones, haga clic con el botón derecho en el nodo del proyecto y elija Implementar.

    Si tiene archivos que no son de código necesarios para la aplicación, puede especificarlos en una lista separada por caracteres de punto y coma en Archivos adicionales para implementar en la página Depurador remoto de Windows.

    Como alternativa, puede incluir los archivos en el proyecto y establecer la propiedad Contenido en en la página Propiedades de cada archivo. Estos archivos se copian en el Directorio de implementación especificado en la página Depurador remoto de Windows. También puede cambiar el Tipo de elemento a Copiar archivo y especificar propiedades adicionales si necesita que los archivos se copien en una subcarpeta del Directorio de implementación.

Configuración de la depuración con símbolos remotos

Puede depurar su código con los símbolos que se generan en el equipo de Visual Studio. El rendimiento del depurador remoto es mucho mejor cuando se usan símbolos locales.

Si debe usar símbolos remotos, tiene que especificar los símbolos remotos en Visual Studio. Para ello, agregue un recurso compartido de archivos de Windows a la ruta de acceso de búsqueda de símbolos en Herramientas > Opciones > Depuración > Símbolos.