Freigeben über


Remote Debugging

Sie können eine Visual Studio-Anwendung debuggen, die auf einem anderen Computer bereitgestellt wurde. Dazu verwenden Sie den Visual Studio-Remotedebugger.

Ausführliche Anweisungen zum Remotedebugging finden Sie in diesen Themen.

Szenario Link
C# oder Visual Basic Remotedebugging eines C#- oder Visual Basic-Projekts
C++ Remotedebugging eines C++-Projekts
Azure App Service Remote-Debugging von ASP.NET Core auf Azure oder für Visual Studio Enterprise der Snapshot Debugger
ASP.NET Remote-Debugging von ASP.NET Core oder Remote-Debugging von ASP.NET
Azure-VM Remote-Debugging von ASP.NET auf einer Azure-VM
Linux Debuggen von .NET Core unter Linux mithilfe von SSH durch Anfügen an einen Prozess
Docker Anfügen an einen Prozess, der in einem Docker-Container läuft
Universelle Windows-Apps (UWP) Ausführen von UWP-Apps auf einem Remotecomputer oder Debuggen eines installierten App-Pakets

Wenn Sie nur den Remotedebugger herunterladen und installieren möchten und keine zusätzlichen Anweisungen für Ihr Szenario benötigen, führen Sie die Schritte in diesem Artikel aus.

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 das neueste Update der Remotetools für Ihre Version von Visual Studio herunter. Frühere Remotetools-Versionen sind 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 x86-Anwendungen auf einem Remotecomputer mit einem x64-Betriebssystem debuggen möchten, installieren Sie die x64-Remotetools. Installieren Sie die ARM64-Remotetools, um x86-, ARM- oder x64-Anwendungen auf einem ARM64-Betriebssystem zu debuggen.
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. 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 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. In älteren Versionen von Windows Server siehe Aufhebung der Dateidownload-Blockierung für Hilfe beim Herunterladen der Remote-Tools.
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. 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 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 Remotetools Kompatibel mit allen Visual Studio 2019-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. Ö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 Remotetools Downloadseite in der Visual Studio 2013-Dokumentation
Visual Studio 2012 Fernwerkzeuge 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-Debugger-Konfigurationsassistent (rdbgwiz.exe) ist jedoch nur verfügbar, wenn Sie 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 ARM, das nur im Download der Visual Studio 2015-Remote-Tools verfügbar ist.
  • Um x64-Apps auf einem ARM64-Betriebssystem zu debuggen, führen Sie die x64-msvsmon.exe aus, die mit den ARM64-Remotetools installiert ist.

Anforderungen

Unterstützte Betriebssysteme

Der Remotecomputer muss eines der folgenden Betriebssysteme ausführen:

  • Windows 11

  • Windows 10 (nicht Telefon)

  • Windows 8 oder 8.1 (nicht Telefon)

  • Windows 7 Service Pack 1

  • Windows Server 2016

  • Windows Server 2012 oder Windows Server 2012 R2

  • Windows Server 2008 Service Pack 2, Windows Server 2008 R2 Service Pack 1

Unterstützte Hardwarekonfigurationen

  • 1,6 GHz oder schneller Prozessor

  • 1 GB RAM (1,5 GB bei Ausführung auf einem virtuellen Computer)

  • 1 GB verfügbarer Festplattenspeicher

  • 5400-RPM-Festplatte

  • DirectX 9-fähige Grafikkarte mit einer Auflösung von 1024 x 768 oder höher

Netzwerkkonfiguration

Der Remotecomputer und der Visual Studio-Computer müssen über ein Netzwerk, eine Arbeitsgruppe oder eine Heimnetzgruppe verbunden sein oder über ein Ethernet-Kabel direkt verbunden sein. 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, z. B. Internetwählverbindungen oder über das Internet über Länder/Regionen, wird nicht empfohlen und kann fehlschlagen oder unannehmbar langsam sein.

(Optional) So führen Sie den Remotedebugger über eine Dateifreigabe aus

Sie finden den Remotedebugger (msvsmon.exe) auf einem Computer, auf dem Visual Studio Community, Professional oder Enterprise bereits installiert ist. In einigen Szenarien ist die einfachste Möglichkeit zum Einrichten des Remotedebuggens das Ausführen des Remotedebuggers („msvsmon.exe“) aus einer Dateifreigabe. Informationen zu Nutzungseinschränkungen finden Sie auf der Hilfeseite des Remotedebuggers (Hilfe > Verwendung im Remotedebugger).

  1. Suchen Sie msvsmon.exe im Verzeichnis, das Ihrer Version von Visual Studio entsprechen:

    Programmdateien\Microsoft Visual Studio 17.0\Common7\IDE\Remote Debugger\x64\msvsmon.exe

    Programmdateien\Microsoft Visual Studio 17.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe

    Programmdateien (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger\x64\msvsmon.exe

    Programmdateien (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger\x86\msvsmon.exe

  2. Geben Sie den Ordner Remotedebugger auf dem Visual Studio-Computer frei.

  3. Führen Sie auf dem Remotecomputer msvsmon.exe aus dem freigegebenen Ordner aus. Befolgen Sie die Setupanweisungen.

Tipp

Informationen zur Befehlszeileninstallation und Befehlszeilenreferenz finden Sie auf der Hilfeseite für msvsmon.exe, indem Sie msvsmon.exe /? in die Befehlszeile auf dem Computer eingeben, auf dem Visual Studio installiert ist (oder wechseln Sie zu Hilfe > Verwendung im Remotedebugger).

Richten Sie den Remotedebugger ein

  1. 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 erhalten Sie unter Remotedebugger als Administrator ausführen.

  2. 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.

    Screenshot der Remotedebuggerkonfiguration.

    Screenshot der Remotedebuggerkonfiguration.

    Wenn die Windows-Webdienst-API nicht installiert ist, was nur unter Windows Server 2008 R2 geschieht, wählen Sie die Schaltfläche Installieren aus.

  3. 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 als Nächstes Remote-Debugging konfigurieren aus, um den Remote-Debugger zu starten.

  4. Wenn die Konfiguration abgeschlossen ist, wird das Fenster Remotedebugger angezeigt.

    Screenshot des Remotedebugger-Fensters

    Screenshot des Remotedebugger-Fensters

    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

Konfigurieren des Remotedebuggers

Sie können einige Aspekte der Konfiguration des Remotedebuggers ändern, nachdem Sie ihn zum ersten Mal gestartet haben.

  • Wenn Sie Berechtigungen für andere Benutzer hinzufügen müssen, um eine Verbindung mit dem Remotedebugger herzustellen, wählen Sie Tools > Berechtigungenaus. Sie müssen über Administratorrechte verfügen, um Berechtigungen zu erteilen oder zu verweigern.

    Wichtig

    Sie können den Remotedebugger unter einem Benutzerkonto ausführen, das sich von dem Benutzerkonto unterscheidet, das Sie auf dem Visual Studio-Computer verwenden, aber Sie müssen das andere Benutzerkonto den Berechtigungen des Remotedebuggers hinzufügen.

    Alternativ können Sie den Remotedebugger über die Befehlszeile mit der /allow <Benutzername> Parameter starten: msvsmon /allow <username@computer>.

  • Wenn Sie den Authentifizierungsmodus oder die Portnummer ändern müssen, oder geben Sie einen Timeoutwert für die Remotetools an: Wählen Sie Tools > Optionenaus.

    Eine Liste der standardmäßig verwendeten Portnummern finden Sie unter Remotedebugger-Portzuweisungen.

    Warnung

    Sie können die Remotetools im Modus "Keine Authentifizierung" ausführen, dieser Modus wird jedoch dringend abgeraten. Es gibt keine Netzwerksicherheit, wenn Sie in diesem Modus arbeiten. Wählen Sie den Modus "Keine Authentifizierung" aus, wenn Sie sicher sind, dass das Netzwerk nicht durch böswilligen oder feindlichen Datenverkehr gefährdet ist.

Konfigurieren von Visual Studio für Remotedebugging

Ausführliche Anweisungen zum Herstellen einer Verbindung mit der App über Visual Studio finden Sie unter den Links zu Ihrem spezifischen Szenario am Anfang dieses Artikels.

Einige Szenarien erfordern die Verwendung von "Anfügen an Prozess", um eine Verbindung mit einer bereits gestarteten Remote-App herzustellen. Für .NET Core-, .NET 5+-, .NET Framework- und C++-Apps können Sie die Remote-App jedoch von Visual Studio aus starten, indem Sie Projekteigenschaften konfigurieren und den Debugger starten. Weitere Informationen finden Sie unter Remotedebugging eines C#- oder Visual Basic-Projekts oder Remotedebugging eines C++-Projekts.

Sie können auch eine ausführbare Datei debuggen, die nicht zu einem Visual Studio-Projekt gehört, obwohl die unterstützten Debugging-Funktionen von der Konfiguration abhängig sind, z. B. die Verfügbarkeit von Symbolen. Weitere Informationen finden Sie unter Debuggen einer App, die nicht Teil einer Visual Studio-Lösungist.

(Optional) Konfigurieren des Remotedebuggers als Dienst

Für das Debuggen in ASP.NET und anderen Serverumgebungen müssen Sie entweder den Remotedebugger als Administrator ausführen oder, wenn sie immer ausgeführt werden soll, den Remotedebugger als Dienst ausführen.

Wenn Sie den Remotedebugger als Dienst konfigurieren möchten, führen Sie die folgenden Schritte aus.

  1. Suchen Sie den Konfigurations-Assistenten für Remote Debugger (rdbgwiz.exe). (Dies ist eine separate Anwendung vom Remotedebugger.) Sie ist nur verfügbar, wenn Sie die Remotetools installieren. Es ist nicht mit Visual Studio installiert.

  2. Starten Sie die Ausführung des Konfigurations-Assistenten. Wenn die erste Seite angezeigt wird, klicken Sie auf Weiter.

  3. Aktivieren Sie das Kontrollkästchen Visual Studio Remote Debugger als Dienst ausführen.

  4. Fügen Sie den Namen des Benutzerkontos und des Kennworts hinzu.

    Sie müssen diesem Konto möglicherweise das Benutzerrecht Anmelden als Dienst hinzufügen (suchen Sie nach Lokale Sicherheitsrichtlinie („secpol.msc“) auf der Startseite oder im Fenster (oder geben Sie secpol an einer Eingabeaufforderung ein). Wenn das Fenster angezeigt wird, doppelklicken Sie auf Zuweisen von Benutzerrechten, und suchen Sie dann Anmelden als Dienst im rechten Bereich. Doppelklicken Sie darauf. Fügen Sie das Benutzerkonto zum Fenster Eigenschaften hinzu, und klicken Sie auf OK). Klicken Sie auf Weiter.

  5. Wählen Sie den Netzwerktyp aus, mit dem die Remotetools kommunizieren sollen. Mindestens ein Netzwerktyp muss ausgewählt werden. Wenn die Computer über eine Domäne verbunden sind, sollten Sie das erste Element auswählen. Wenn die Computer über eine Arbeitsgruppe oder Heimnetzgruppe verbunden sind, sollten Sie die zweiten oder dritten Elemente auswählen. Klicken Sie auf Weiter.

  6. Wenn der Dienst gestartet werden kann, wird Der Konfigurations-Assistent für Visual Studio Remote Debugger wurde erfolgreich abgeschlossen angezeigt. Wenn der Dienst nicht gestartet werden kann, wird Fehler beim Abschließen des Assistenten zum Konfigurieren von Visual Studio Remote Debugger angezeigt. Auf der Seite finden Sie auch einige Tipps, die Sie befolgen können, um den Dienst zu starten.

  7. Klicken Sie auf Beenden.

    An diesem Punkt wird der Remotedebugger als Dienst ausgeführt. Sie können dies überprüfen, indem Sie zu Systemsteuerung > Dienste wechseln und nach Visual Studio-Remotedebuggersuchen.

    Sie können den Remotedebuggerdienst über Systemsteuerung > Dienstebeenden und starten.

Einrichten des Debuggens 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 den Remotedebuggingmonitor anweisen, nach Symbolen auf dem Remotecomputer zu suchen.

Sie können den folgenden Msvsmon-Befehlszeilenschalter verwenden, um Remotesymbole für verwalteten Code zu verwenden: Msvsmon /FallbackLoadRemoteManagedPdbs

Weitere Informationen finden Sie in der Hilfe zum Remotedebugging (drücken Sie im Remotedebuggerfenster F1, oder klicken Sie auf Hilfe > Nutzung).