Remotedebugging eines C++-Projekts in Visual Studio
Um eine Visual Studio-Anwendung auf einem anderen Computer zu debuggen, installieren und führen Sie die Remotetools auf dem Computer aus, auf dem Sie Ihre App bereitstellen, konfigurieren Sie Ihr Projekt so, dass eine Verbindung mit dem Remotecomputer von Visual Studio hergestellt wird, und stellen Sie die App dann bereit und führen Sie sie aus.
Informationen zum Remote-Debugging von universell-Windows-Apps (UWP) finden Sie unter Debugging eines installierten App-Pakets.
Anforderungen
Der Remotedebugger wird ab Windows Server 2008 Service Pack 2 unter Windows 7 und neueren Versionen von Windows Server unterstützt. Eine vollständige Liste der Anforderungen finden Sie unter Anforderungen.
Anmerkung
Das Debuggen zwischen zwei Computern, die über einen Proxy verbunden sind, wird nicht unterstützt. Das Debuggen über eine Verbindung mit hoher Latenz oder geringer Bandbreite, wie z. B. Internetwählverbindungen oder über das Internet über Länder/Regionen, wird nicht empfohlen und kann fehlschlagen oder unannehmbar langsam sein.
Herunterladen und Installieren der Remotetools
Laden Sie auf dem Remotegerät oder Server, auf dem Sie debuggen möchten, statt auf dem Visual Studio-Computer, die richtige Version der Remotetools aus den Links in der folgenden Tabelle herunter, und installieren Sie sie.
- Laden Sie die neuesten Remotetools für Ihre Version von Visual Studio herunter. Die neueste Version der Remotetools ist mit früheren Visual Studio-Versionen kompatibel, frühere Versionen von Remotetools sind jedoch nicht mit späteren Visual Studio-Versionen kompatibel. (Wenn Sie beispielsweise Visual Studio 2019 verwenden, laden Sie das neueste Update der Remotetools für Visual Studio 2019 herunter. Laden Sie in diesem Szenario die Remotetools für Visual Studio 2022 nicht herunter.)
- Laden Sie die Remotetools mit der gleichen Architektur wie den Computer herunter, auf dem Sie sie installieren. Wenn Sie beispielsweise eine 32-Bit-App auf einem Remotecomputer mit einem 64-Bit-Betriebssystem debuggen möchten, installieren Sie die 64-Bit-Remotetools.
- Wenn Sie eine ARM64EC Anwendung auf einem ARM64-Gerät remote debuggen, installieren Sie die ARM64-Remotetools, und starten Sie dann den x64-Remotedebugger, der mit diesen Tools installiert wird. Dies finden Sie unter: Programmdateien (x86)\Microsoft Visual Studio<Version>\Common7\IDE\Remote Debugger\x64.
Version | Link | Hinweise |
---|---|---|
Visual Studio 2022 | Remotetools | Kompatibel mit allen Visual Studio 2022-Versionen. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. In älteren Versionen von Windows Server finden Sie unter Aufheben der Blockierung des Dateidownloads Hilfe beim Herunterladen der Remote-Tools. |
Visual Studio 2019 | Remotetools | Remotetools für Visual Studio 2019 stehen über My.VisualStudio.com zur Verfügung. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Wenn Sie Unterstützung beim Herunterladen der Remotetools bei älteren Versionen von Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads. |
Visual Studio 2017 | Remotetools | Remotetools für Visual Studio 2017 sind über My.VisualStudio.com verfügbar. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Unter Windows Server finden Sie Aufheben der Blockierung des Dateidownloads, um Hilfe beim Herunterladen der Remotetools zu erhalten. |
Visual Studio 2015 | Remote-Werkzeuge | Remotetools für Visual Studio 2015 stehen über My.VisualStudio.com zur Verfügung. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Unter Windows Server finden Sie Aufheben der Blockierung des Dateidownloads, um Hilfe beim Herunterladen der Remotetools zu erhalten. |
Visual Studio 2013 | Remotetools | Downloadseite in der Visual Studio 2013-Dokumentation |
Visual Studio 2012 | Remotetools | Downloadseite in der Visual Studio 2012-Dokumentation |
Version | Link | Hinweise |
---|---|---|
Visual Studio 2019 | Remote-Werkzeuge | Kompatibel mit allen Visual Studio 2019-Versionen. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Unter Windows Server finden Sie Aufheben der Blockierung des Dateidownloads, um Hilfe beim Herunterladen der Remotetools zu erhalten. Öffnen Sie für die neueste Version der Remotetools das Visual Studio 2022-Dokument. |
Visual Studio 2017 | Remotetools | Kompatibel mit allen Visual Studio 2017-Versionen. Laden Sie die Version herunter, die Ihrem Gerätebetriebssystem (x86, x64 (AMD64) oder ARM64 entsprechen. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads. |
Visual Studio 2015 | Remotetools | Remotetools für Visual Studio 2015 stehen über My.VisualStudio.com zur Verfügung. Wenn Sie dazu aufgefordert werden, treten Sie dem kostenlosen Visual Studio Dev Essentials Programm bei, oder melden Sie sich mit Ihrer Visual Studio-Abonnement-ID an. Wenn Sie Unterstützung beim Herunterladen der Remotetools unter Windows Server benötigen, lesen Sie die Informationen unter Entsperren des Dateidownloads. |
Visual Studio 2013 | Fernwerkzeuge | Downloadseite in der Visual Studio 2013-Dokumentation |
Visual Studio 2012 | Remotetools | Downloadseite in der Visual Studio 2012-Dokumentation |
Sie können den Remotedebugger ausführen, indem Sie msvsmon.exe auf den Remotecomputer kopieren, anstatt die Remotetools zu installieren. Der Remote-Debuggerkonfigurationsassistent (rdbgwiz.exe) ist nur verfügbar, wenn Sie jedoch die Remotetools installieren. Möglicherweise müssen Sie den Assistenten für die Konfiguration verwenden, wenn Sie den Remotedebugger als Dienst ausführen möchten. Weitere Informationen finden Sie unter (Optional) Konfigurieren des Remotedebuggers als Dienst.
Anmerkung
- Um Windows 10- oder höher-Apps auf ARM-Geräten zu debuggen, verwenden Sie ARM64, das mit der neuesten Version der Remotetools verfügbar ist.
- Um Windows 10-Apps auf Windows RT-Geräten zu debuggen, verwenden Sie die ARM-Architektur, die nur im Remotetools-Download von Visual Studio 2015 verfügbar ist.
Tipp
In einigen Szenarien kann es am effizientesten sein, den Remotedebugger von einer Dateifreigabe aus auszuführen. Weitere Informationen finden Sie unter Ausführen des Remotedebuggers von einer Dateifreigabe.
Einrichten des Remote-Debuggers
Suchen und starten Sie auf dem Remotecomputer im Menü Start den Remotedebugger.
Wenn Sie nicht über Administratorberechtigungen auf dem Remotecomputer verfügen, klicken Sie mit der rechten Maustaste auf die Remotedebugger--App, und wählen Sie Als Administrator ausführenaus. Andernfalls starten Sie es einfach normal.
Wenn Sie planen, einen Prozess anzufügen, der als Administrator ausgeführt wird oder unter einem anderen Benutzerkonto (z. B. IIS) ausgeführt wird, klicken Sie mit der rechten Maustaste auf die Remotedebugger--App, und wählen Sie Als Administrator ausführenaus. Weitere Informationen finden Sie unter Remotedebugger als Administrator ausführen.
Wenn Sie den Remotedebugger zum ersten Mal starten (oder bevor Sie ihn konfiguriert haben), wird der Assistent Remotedebuggingkonfiguration angezeigt.
Wählen Sie in den meisten Szenarien Next aus, bis Sie zur Seite Konfigurieren der Windows-Firewall Des Assistenten gelangen.
Wenn die Windows-Webdienst-API nicht installiert ist, was nur unter Windows Server 2008 R2 geschieht, wählen Sie die Schaltfläche Installieren aus.
Wählen Sie mindestens einen Netzwerktyp aus, auf dem Sie die Remotetools verwenden möchten. Wenn die Computer über eine Domäne verbunden sind, müssen Sie das erste Element auswählen. Wenn die Computer über eine Arbeitsgruppe oder Heimnetzgruppe verbunden sind, wählen Sie das zweite oder dritte Element entsprechend aus.
Wählen Sie als Nächstes Fertig stellen aus, um den Remotedebugger zu starten.
Wählen Sie Remotedebugging konfigurieren aus, um den Remotedebugger zu starten.
Nach Abschluss der Konfiguration wird das Fenster Remote-Debugger angezeigt.
Der Remotedebugger wartet jetzt auf eine Verbindung. Verwenden Sie den Servernamen und die Portnummer, die angezeigt wird, um die Remoteverbindungskonfiguration in Visual Studio festzulegen.
Um den Remotedebugger zu beenden, wählen Sie Datei>Beenden aus. Sie können sie über das Menü Start oder über die Befehlszeile neu starten:
<Remote debugger installation directory>\msvsmon.exe
Anmerkung
Wenn Sie Berechtigungen für zusätzliche Benutzer hinzufügen müssen, ändern Sie den Authentifizierungsmodus oder die Portnummer für den Remotedebugger, lesen Sie Konfigurieren des Remotedebuggers.
Remotedebugging eines C++-Projekts
Im folgenden Verfahren lautet der Pfad des Projekts C:\remotetemp, und der Name des Remotecomputers ist MySurface.
Erstellen einer C++-Konsolenanwendung mit dem Namen CppConsoleApp-
Legen Sie einen Haltepunkt an einer beliebigen Stelle in der Anwendung fest, die leicht erreicht wird, z. B. in CppConsoleApp.cpp, in der
main
-Funktion.Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Eigenschaften aus. Öffnen Sie die Registerkarte Debugging.
Legen Sie Zu startender Debugger auf Remote-Windows-Debugger fest.
Nehmen Sie die folgenden Änderungen an den Eigenschaften vor:
Einstellung Wert Remotebefehl C:\remotetemp\CppConsoleApp.exe Arbeitsverzeichnis C:\remotetemp Remoteservername MySurface:portnummer Verbindung Remote mit Windows-Authentifizierung Debuggertyp Nur systemeigen Bereitstellungsverzeichnis C:\remotetemp Zusätzliche bereitzustellende Dateien $(ProjectDir)\data Wenn Sie zusätzliche Ordner bereitstellen und alle Dateien in einem Ordner im selben Ordner bereitstellen möchten, geben Sie einen Ordnernamen an.
Weitere Informationen zu den Eigenschaften finden Sie unter Project-Einstellungen für eine C++-Debugkonfiguration.
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Projektmappe, und wählen Sie dann Konfigurations-Manager aus.
Aktivieren Sie für die Konfiguration Debuggen das Kontrollkästchen Bereitstellen.
Debuggen starten (Debuggen > Debuggenstarten, oder F5).
Die ausführbare Datei wird automatisch auf dem Remotecomputer bereitgestellt.
Wenn Sie dazu aufgefordert werden, geben Sie Netzwerkanmeldeinformationen ein, um eine Verbindung mit dem Remotecomputer herzustellen.
Die erforderlichen Anmeldeinformationen sind spezifisch für die Sicherheitskonfiguration Ihres Netzwerks. Beispielsweise können Sie auf einem Domänencomputer ein Sicherheitszertifikat auswählen oder Ihren Domänennamen und Ihr Kennwort eingeben. Auf einem Computer ohne Domäne können Sie den Computernamen und einen gültigen Benutzerkontonamen eingeben, z. B. MySurface\-name@something.comzusammen mit dem richtigen Kennwort.
Auf dem Visual Studio-Computer sollte angezeigt werden, dass die Ausführung am Haltepunkt beendet wird.
Tipp
Alternativ können Sie die Dateien als separaten Schritt bereitstellen. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Projektknoten, und wählen Sie dann Bereitstellen aus.
Wenn Sie codefremde Dateien haben, die von der Anwendung benötigt werden, können Sie diese in einer durch Semikolons getrennten Liste in Zusätzliche Dateien zum Bereitstellen auf der Eigenschaftenseite Debugger angeben, wenn Remote-Windows-Debugger ausgewählt ist.
Alternativ können Sie die Dateien in Ihr Projekt einschließen und die eigenschaft Content auf Ja- auf der Seite Eigenschaften für jede Datei festlegen. Diese Dateien werden mit der ausgewählten Option Windows-Remotedebugger in das auf der Eigenschaftenseite Debugger angegebene Bereitstellungsverzeichnis kopiert. Sie können auch den Elementtyp in Datei kopieren ändern und zusätzliche Eigenschaften angeben, wenn die Dateien in einen Unterordner des Bereitstellungsverzeichnisses kopiert werden müssen.
Einrichten des Debuggings mit Remotesymbolen
Sie sollten den Code mit den Symbolen debuggen können, die Sie auf dem Visual Studio-Computer generieren. Die Leistung des Remotedebuggers ist viel besser, wenn Sie lokale Symbole verwenden.
Wenn Sie Remotesymbole verwenden müssen, müssen Sie die Remotesymbole in Visual Studio angeben, indem Sie dem Symbolsuchpfad unter Extras > Optionen > Debuggen > Symbole eine Windows-Dateifreigabe hinzufügen.