Condividi tramite


Debug remoto di un progetto C++ in Visual Studio

Per eseguire il debug di un'applicazione di Visual Studio in un computer diverso, installare ed eseguire gli strumenti remoti nel computer in cui si distribuirà l'app, configurare il progetto per connettersi al computer remoto da Visual Studio e quindi distribuire ed eseguire l'app.

Remote debugger components

Per informazioni sul debug remoto di app UWP (Universal Windows Apps), vedi Eseguire il debug di un pacchetto di app installato.

Requisiti

Il debugger remoto è supportato in Windows 7 e versioni successive e di Windows Server a partire da Windows Server 2008 Service Pack 2. Per un elenco completo dei requisiti, vedere Requisiti.

Nota

Il debug tra due computer connessi tramite un proxy non è supportato. Il debug su una latenza elevata o una connessione a larghezza di banda ridotta, ad esempio connessione Internet remota o internet tra paesi/aree geografiche non è consigliato e potrebbe non riuscire o essere inaccettabile lento.

Scaricare e installare Remote Tools

Nel dispositivo remoto o nel server in cui si vuole eseguire il debug, anziché nel computer di Visual Studio, scaricare e installare la versione corretta degli strumenti remoti dai collegamenti nella tabella seguente.

  • Scaricare gli strumenti remoti più recenti per la versione di Visual Studio. La versione più recente degli strumenti remoti è compatibile con le versioni precedenti di Visual Studio, ma le versioni precedenti degli strumenti remoti non sono compatibili con le versioni successive di Visual Studio. Ad esempio, se si usa Visual Studio 2019, scaricare l'aggiornamento più recente degli strumenti remoti per Visual Studio 2019. In questo scenario non scaricare gli strumenti remoti per Visual Studio 2022.
  • Scaricare gli strumenti remoti con la stessa architettura del computer in cui si stanno installando. Ad esempio, se si vuole eseguire il debug di un'app a 32 bit in un computer remoto che esegue un sistema operativo a 64 bit, installare gli strumenti remoti a 64 bit.
  • Se si esegue il debug remoto di un'applicazione ARM64EC in un dispositivo ARM64, installare gli strumenti remoti ARM64 e quindi avviare il debugger remoto x64 che viene installato con tali strumenti. Questa opzione è disponibile in: Programmi (x86)\Microsoft Visual Studio<version>\Common7\IDE\Remote Debugger\x64.
Versione Collega Note
Visual Studio 2022 Remote Tools Compatibile con tutte le versioni di Visual Studio 2022. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 o ARM64). Nelle versioni precedenti di Windows Server, vedere Sbloccare il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2019 Remote Tools Compatibile con tutte le versioni di Visual Studio 2019. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 o ARM64). Nelle versioni precedenti di Windows Server, vedere Sbloccare il download del file per informazioni sul download degli strumenti remoti.
Visual Studio 2017 Remote Tools Compatibile con tutte le versioni di Visual Studio 2017. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 o ARM64). In Windows Server, vedere Sbloccare il download del file per scaricare gli strumenti remoti.
Visual Studio 2015 Remote Tools Gli strumenti remoti per Visual Studio 2015 sono disponibili da My.VisualStudio.com. Se richiesto, partecipare al programma Visual Studio Dev Essentials gratuito o accedere con l'ID sottoscrizione di Visual Studio. In Windows Server, vedere Sbloccare il download del file per scaricare gli strumenti remoti.
Visual Studio 2013 Remote Tools Pagina di download nella documentazione di Visual Studio 2013
Visual Studio 2012 Remote Tools Pagina di download nella documentazione di Visual Studio 2012
Versione Collega Note
Visual Studio 2019 Remote Tools Compatibile con tutte le versioni di Visual Studio 2019. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 o ARM64). In Windows Server, vedere Sbloccare il download del file per scaricare gli strumenti remoti. Per la versione più recente degli strumenti remoti, aprire la documentazione di Visual Studio 2022.
Visual Studio 2017 Remote Tools Compatibile con tutte le versioni di Visual Studio 2017. Scaricare la versione corrispondente al sistema operativo del dispositivo (x86, x64 o ARM64). In Windows Server, vedere Sbloccare il download del file per scaricare gli strumenti remoti.
Visual Studio 2015 Remote Tools Gli strumenti remoti per Visual Studio 2015 sono disponibili da My.VisualStudio.com. Se richiesto, partecipare al programma Visual Studio Dev Essentials gratuito o accedere con l'ID sottoscrizione di Visual Studio. In Windows Server, vedere Sbloccare il download del file per scaricare gli strumenti remoti.
Visual Studio 2013 Remote Tools Pagina di download nella documentazione di Visual Studio 2013
Visual Studio 2012 Remote Tools Pagina di download nella documentazione di Visual Studio 2012

È possibile eseguire il debugger remoto copiando msvsmon.exe nel computer remoto, anziché installando gli strumenti remoti. Tuttavia, la Configurazione guidata debugger remoto (rdbgwiz.exe) è disponibile solo quando si installano gli strumenti remoti. Potrebbe essere necessario usare la procedura guidata per la configurazione se si vuole eseguire il debugger remoto come servizio. Per altre informazioni, vedere (Facoltativo) Configurare il debugger remoto come servizio.

Nota

  • Per eseguire il debug di app di Windows 10 o versioni successive nei dispositivi ARM, usare ARM64, disponibile con la versione più recente degli strumenti remoti.
  • Per eseguire il debug delle app di Windows 10 nei dispositivi Windows RT, usare ARM, disponibile solo nel download degli strumenti remoti di Visual Studio 2015.

Suggerimento

In alcuni scenari, può essere più efficiente eseguire il debugger remoto da una condivisione file. Per altre informazioni, vedere Eseguire il debugger remoto da una condivisione file.

Configurare il debugger remoto

  1. Nel computer remoto trovare e avviare Remote Debugger dal menu Start .

    Se non si dispone delle autorizzazioni amministrative nel computer remoto, fare clic con il pulsante destro del mouse sull'app Debugger remoto e scegliere Esegui come amministratore. In caso contrario, inizialo normalmente.

    Se si prevede di connettersi a un processo in esecuzione come amministratore o in esecuzione con un account utente diverso,ad esempio IIS, fare clic con il pulsante destro del mouse sull'app Debugger remoto e selezionare Esegui come amministratore. Per altre informazioni, vedere Eseguire il debugger remoto come amministratore.

  2. La prima volta che si avvia il debugger remoto (o prima di averla configurata), viene visualizzata la configurazione guidata debug remoto.

    Nella maggior parte degli scenari scegliere Avanti fino a visualizzare la pagina Configura Windows Firewall della procedura guidata.

    Screenshot of remote debugger configuration.

    Screenshot of remote debugger configuration.

    Se l'API di Servizi Web Windows non è installata, che si verifica solo in Windows Server 2008 R2, selezionare il pulsante Installa .

  3. Selezionare almeno un tipo di rete su cui si vogliono usare gli strumenti remoti. Se i computer sono connessi tramite un dominio, è necessario scegliere il primo elemento. Se i computer sono connessi tramite un gruppo di lavoro o un gruppo home, scegliere il secondo o il terzo elemento in base alle esigenze.

    Selezionare quindi Fine per avviare il debugger remoto.

    Selezionare quindi Configura debug remoto per avviare il debugger remoto.

  4. Al termine della configurazione, viene visualizzata la finestra Debugger remoto.

    Screenshot of remote debugger window

    Screenshot of remote debugger window

    Il debugger remoto è ora in attesa di una connessione. Usare il nome del server e il numero di porta visualizzati per impostare la configurazione della connessione remota in Visual Studio.

Per arrestare il debugger remoto, selezionare Uscita file>. È possibile riavviarlo dal menu Start o dalla riga di comando:

<Remote debugger installation directory>\msvsmon.exe

Nota

Se è necessario aggiungere autorizzazioni per altri utenti, modificare la modalità di autenticazione o il numero di porta per il debugger remoto, vedere Configurare il debugger remoto.

Eseguire il debug remoto di un progetto C++

Nella procedura seguente il percorso del progetto è C:\remotetemp e il nome del computer remoto è MySurface.

  1. Creare un'applicazione console C++ denominata CppConsoleApp

  2. Impostare un punto di interruzione in un punto qualsiasi dell'applicazione facilmente raggiungibile, ad esempio in CppConsoleApp.cpp, nella main funzione .

  3. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto e scegliere Proprietà. Aprire la scheda Debug.

  4. Impostare Debugger da avviare su Debugger Windows remoto.

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

  5. Apportare le seguenti modifiche alle proprietà:

    Impostazione Valore
    Comando remoto C:\remotetemp\CppConsoleApp.exe
    Directory di lavoro C:\remotetemp
    Nome server remoto MySurface:portnumber
    Connessione Remoto con autenticazione di Windows
    Tipo di debugger Solo nativo
    Directory di distribuzione C:\remotetemp
    File aggiuntivi da distribuire $(ProjectDir)\data

    Se si distribuiscono cartelle aggiuntive e si desidera che tutti i file in una cartella vengano distribuiti nella stessa cartella, specificare un nome di cartella.

    Per altre informazioni sulle proprietà, vedere Impostazioni del progetto per una configurazione di debug C++.

  6. In Esplora soluzioni fare clic con il pulsante destro del mouse sulla soluzione e scegliere Configuration Manager.

  7. Per la configurazione Debug, selezionare la casella di controllo Distribuisci.

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

  8. Avviare il debug (Debug > Avvia debug o F5).

  9. Il file eseguibile viene distribuito automaticamente al computer remoto.

  10. Se richiesto, immettere le credenziali di rete per connettersi al computer remoto.

    Le credenziali necessarie sono specifiche della configurazione di sicurezza della rete. Ad esempio, in un computer di dominio, è possibile scegliere un certificato di sicurezza o immettere il nome di dominio e la password. In un computer non di dominio è possibile immettere il nome del computer e un nome di account utente valido, ad esempio MySurface\name@something.com, insieme alla password corretta.

  11. Nel computer di Visual Studio l'esecuzione viene arrestata in corrispondenza del punto di interruzione.

    Suggerimento

    In alternativa, è possibile distribuire i file come passaggio separato. Nel Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo del progetto e quindi scegliere Distribuisci.

    Se sono presenti file non di codice richiesti dall'applicazione, è possibile specificarli in un elenco delimitato da punto e virgola in File aggiuntivi da distribuire nella pagina Debugger Windows remoto.

    In alternativa, è possibile includere i file nel progetto e impostare la proprietà Content su nella pagina Proprietà per ogni file. Questi file vengono copiati nella directory di distribuzione specificata nella pagina Debugger Windows remoto. È anche possibile modificare il tipo di elemento in Copia file e specificare proprietà aggiuntive se è necessario copiare i file in una sottocartella della directory di distribuzione.

Configurare il debug con simboli remoti

Dovrebbe essere possibile eseguire il debug del codice con i simboli generati nel computer di Visual Studio. L'uso di simboli locali consente di migliorare notevolmente le prestazioni del debugger remoto.

Se è necessario usare simboli remoti, è necessario specificare i simboli remoti in Visual Studio aggiungendo una condivisione file di Windows al percorso di ricerca dei simboli in Strumenti > Opzioni > Debug > simboli.