Udostępnij za pomocą


Zdalne debugowanie projektu w języku C# lub Visual Basic w programie Visual Studio

Aby debugować aplikację programu Visual Studio, która została wdrożona na innym komputerze, zainstaluj i uruchom narzędzia zdalne na komputerze, na którym wdrożono aplikację, skonfiguruj projekt w celu nawiązania połączenia z komputerem zdalnym z programu Visual Studio, a następnie uruchom aplikację.

Zrzut ekranu przedstawiający składniki zdalnego debugera.

Aby uzyskać informacje na temat zdalnego debugowania aplikacji uniwersalnych systemu Windows (UWP), zobacz Debugowanie zainstalowanego pakietu aplikacji.

Wymagania

Zdalny debuger jest obsługiwany w systemie Windows 7 i nowszych wersjach systemu Windows Server, począwszy od systemu Windows Server 2008 z dodatkiem Service Pack 2. Aby uzyskać pełną listę wymagań, zobacz wymagania .

Notatka

Debugowanie między dwoma komputerami połączonymi za pośrednictwem serwera proxy nie jest obsługiwane. Debugowanie za pomocą połączeń o dużym opóźnieniu lub niskiej przepustowości, takich jak połączenie telefoniczne do Internetu, lub przez Internet między różnymi krajami/regionami, nie jest zalecane i może zakończyć się niepowodzeniem lub być niedopuszczalnie wolne.

Pobieranie i instalowanie narzędzi zdalnych

Na urządzeniu zdalnym lub serwerze, na którym chcesz debugować, a nie na maszynie programu Visual Studio, pobierz i zainstaluj poprawną wersję narzędzi zdalnych z linków w poniższej tabeli.

  • Pobierz najnowszą aktualizację narzędzi zdalnych dla używanej wersji programu Visual Studio. Narzędzia zdalne dla programu Visual Studio 2022 i 2026 mogą być używane z jedną z wersji programu Visual Studio. Jednak wersje narzędzi zdalnych starszych niż Visual Studio 2022 nie są zgodne z nowszymi wersjami programu Visual Studio. (Jeśli na przykład używasz programu Visual Studio 2019, pobierz najnowszą aktualizację narzędzi zdalnych dla programu Visual Studio 2019. W tym scenariuszu nie pobieraj narzędzi zdalnych dla programu Visual Studio 2022).
  • Pobierz najnowszą aktualizację narzędzi zdalnych dla używanej wersji programu Visual Studio. Starsze wersje narzędzi zdalnych nie są zgodne z nowszymi wersjami programu Visual Studio. (Jeśli na przykład używasz programu Visual Studio 2019, pobierz najnowszą aktualizację narzędzi zdalnych dla programu Visual Studio 2019. W tym scenariuszu nie pobieraj narzędzi zdalnych dla programu Visual Studio 2022).
  • Pobierz narzędzia zdalne z tą samą architekturą co maszyna, na której je instalujesz. Jeśli na przykład chcesz debugować aplikacje x86 na komputerze zdalnym z systemem operacyjnym x64, zainstaluj narzędzia zdalne x64. Aby debugować aplikacje x86, ARM lub x64 w systemie operacyjnym ARM64, zainstaluj narzędzia zdalne ARM64.
Wersja Link Notatki
Visual Studio 2022 narzędzia zdalne Zgodność ze wszystkimi wersjami programu Visual Studio 2022. Pobierz wersję zgodną z systemem operacyjnym urządzenia (x86, x64 (AMD64) lub ARM64. W starszych wersjach systemu Windows Server zobacz Odblokowywanie pobierania plików, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych.
Visual Studio 2019 narzędzia zdalne Narzędzia zdalne dla programu Visual Studio 2019 są dostępne w My.VisualStudio.com. Jeśli zostanie wyświetlony monit, dołącz do bezpłatnego programu Visual Studio Dev Essentials lub zaloguj się przy użyciu identyfikatora subskrypcji programu Visual Studio. Pobierz wersję zgodną z systemem operacyjnym urządzenia (x86, x64 (AMD64) lub ARM64. W starszych wersjach systemu Windows Server zobacz Odblokowywanie pobierania plików, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych.
Visual Studio 2017 narzędzia zdalne Narzędzia zdalne dla programu Visual Studio 2017 są dostępne w My.VisualStudio.com. Jeśli zostanie wyświetlony monit, dołącz do bezpłatnego programu Visual Studio Dev Essentials lub zaloguj się przy użyciu identyfikatora subskrypcji programu Visual Studio. Pobierz wersję zgodną z systemem operacyjnym urządzenia (x86, x64 (AMD64) lub ARM64. W systemie Windows Server, zobacz Odblokuj pobieranie pliku, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych.
Visual Studio 2015 narzędzia zdalne Narzędzia zdalne dla programu Visual Studio 2015 są dostępne w My.VisualStudio.com. Jeśli zostanie wyświetlony monit, dołącz do bezpłatnego programu Visual Studio Dev Essentials lub zaloguj się przy użyciu identyfikatora subskrypcji programu Visual Studio. W systemie Windows Server, zobacz Odblokuj pobieranie pliku, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych.
Visual Studio 2013 narzędzia zdalne Strona pobierania w dokumentacji programu Visual Studio 2013
Visual Studio 2012 narzędzia zdalne Strona pobierania w dokumentacji programu Visual Studio 2012
Wersja Link Notatki
Visual Studio 2019 narzędzia zdalne Zgodność ze wszystkimi wersjami programu Visual Studio 2019. Pobierz wersję zgodną z systemem operacyjnym urządzenia (x86, x64 (AMD64) lub ARM64. W systemie Windows Server, zobacz Odblokuj pobieranie pliku, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych. W przypadku najnowszej wersji narzędzi zdalnych otwórz dokument Visual Studio 2022.
Visual Studio 2017 narzędzia zdalne Zgodność ze wszystkimi wersjami programu Visual Studio 2017. Pobierz wersję zgodną z systemem operacyjnym urządzenia (x86, x64 (AMD64) lub ARM64. W systemie Windows Server, zobacz Odblokuj pobieranie pliku, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych.
Visual Studio 2015 narzędzia zdalne Narzędzia zdalne dla programu Visual Studio 2015 są dostępne w My.VisualStudio.com. Jeśli zostanie wyświetlony monit, dołącz do bezpłatnego programu Visual Studio Dev Essentials lub zaloguj się przy użyciu identyfikatora subskrypcji programu Visual Studio. W systemie Windows Server, zobacz Odblokuj pobieranie pliku, aby uzyskać pomoc dotyczącą pobierania narzędzi zdalnych.
Visual Studio 2013 narzędzia zdalne Strona pobierania w dokumentacji programu Visual Studio 2013
Visual Studio 2012 narzędzia zdalne Strona pobierania w dokumentacji programu Visual Studio 2012

Debuger zdalny można uruchomić, kopiując msvsmon.exe na komputer zdalny, zamiast instalować narzędzia zdalne. Jednak Kreator konfiguracji debugera zdalnego (rdbgwiz.exe) jest dostępny tylko podczas instalowania narzędzi zdalnych. Może być konieczne użycie kreatora do konfiguracji, jeśli chcesz uruchomić zdalny debuger jako usługę. Aby uzyskać więcej informacji, zobacz (opcjonalnie) Konfigurowanie zdalnego debugera jako usługi.

Notatka

  • Aby debugować aplikacje systemu Windows 10 lub nowsze na urządzeniach ARM, użyj usługi ARM64, która jest dostępna z najnowszą wersją narzędzi zdalnych.
  • Aby debugować aplikacje systemu Windows 10 na urządzeniach z systemem Windows RT, użyj usługi ARM, która jest dostępna tylko w pobraniu narzędzi zdalnych programu Visual Studio 2015.
  • Aby debugować aplikacje x64 w systemie operacyjnym ARM64, uruchom x64 msvsmon.exe zainstalowane razem z narzędziami zdalnymi ARM64.

Napiwek

W niektórych scenariuszach uruchamianie zdalnego debugera z zasobu sieciowego może być najbardziej wydajne. Aby uzyskać więcej informacji, zobacz Uruchamianie zdalnego debugera z udostępnionego folderu.

Konfigurowanie zdalnego debugera

Po zainstalowaniu zdalnego debugera wykonaj następujące kroki.

  1. Na komputerze zdalnym znajdź i uruchom Remote Debugger z menu Start.

    Jeśli nie masz uprawnień administracyjnych na komputerze zdalnym, kliknij prawym przyciskiem myszy aplikację Remote Debugger i wybierz pozycję Uruchom jako administrator. W przeciwnym razie po prostu uruchom go normalnie.

    Jeśli planujesz dołączyć do procesu, który jest uruchomiony jako administrator lub działa w ramach innego konta użytkownika (takiego jak usługi IIS), kliknij prawym przyciskiem myszy aplikację Remote Debugger i wybierz Uruchom jako administrator. Aby uzyskać więcej informacji, zobacz Uruchom zdalny debuger jako administrator.

  2. Przy pierwszym uruchomieniu debugera zdalnego (lub przed jego skonfigurowaniem) zostanie wyświetlony kreator Konfiguracji Debugowania Zdalnego.

    W większości scenariuszy wybierz pozycję Dalej, aż dojdziesz do strony Skonfiguruj zaporę systemu Windows kreatora.

    Zrzut ekranu przedstawiający konfigurację zdalnego debugera.

    Zrzut ekranu przedstawiający konfigurację zdalnego debugera.

    Jeśli interfejs API usług sieci Web systemu Windows nie jest zainstalowany, co dotyczy tylko systemu Windows Server 2008 R2, wybierz przycisk Zainstaluj.

  3. Wybierz co najmniej jeden typ sieci, w którym chcesz używać narzędzi zdalnych. Jeśli komputery są połączone za pośrednictwem domeny, musisz wybrać pierwszy element. Jeśli komputery są połączone za pośrednictwem grupy roboczej lub grupy domowej, wybierz odpowiedni drugi lub trzeci element.

    Następnie wybierz pozycję Zakończ, aby uruchomić debuger zdalny.

    Następnie wybierz pozycję Skonfiguruj debugowanie zdalne, aby uruchomić debuger zdalny.

  4. Po zakończeniu konfiguracji zostanie wyświetlone okno Remote Debugger.

    zrzut ekranu przedstawiający okno debugera zdalnego

    zrzut ekranu przedstawiający okno debugera zdalnego

    Zdalny debuger czeka teraz na połączenie. Użyj nazwy serwera i podanego numeru portu, aby ustawić konfigurację połączenia zdalnego w programie Visual Studio.

Aby zatrzymać zdalny debuger, wybierz Plik>Zakończ. Można go ponownie uruchomić z menu Start lub z poziomu wiersza polecenia:

<Remote debugger installation directory>\msvsmon.exe

Notatka

Jeśli musisz dodać uprawnienia dla dodatkowych użytkowników, zmienić tryb uwierzytelniania lub numer portu debugera zdalnego, zobacz Konfigurowanie zdalnego debugera.

Zdalne debugowanie projektu

Debuger nie może wdrażać aplikacji klasycznych Visual C# ani Visual Basic na maszynie zdalnej, ale nadal można je debugować zdalnie w następujący sposób. Poniższa procedura zakłada, że chcesz debugować go na komputerze o nazwie MJO-DL, jak pokazano na poniższej ilustracji.

  1. Utwórz projekt WPF o nazwie MyWpf.

    Jeśli próbujesz zdalnie debugować aplikację MAUI zamiast WPF, zobacz Zdalne debugowanie aplikacji .NET MAUI w systemie Windows.

  2. Ustaw punkt przerwania gdzieś w kodzie, który jest łatwo osiągany.

    Można na przykład ustawić punkt przerwania w procedurze obsługi przycisków. Aby to zrobić, otwórz plik MainWindow.xaml i dodaj kontrolkę Przycisk z przybornika, a następnie kliknij dwukrotnie przycisk, aby otworzyć jego procedurę obsługi.

  3. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt i wybierz właściwości .

  4. Na stronie właściwości wybierz kartę Debug.

    W przypadku projektów w języku C# przeznaczonych dla platformy .NET Core lub .NET 5+, począwszy od programu Visual Studio 2022, wybierz interfejs użytkownika Debugowanie profilów uruchamiania z karty debugowania Debugowanie, aby skonfigurować ustawienia debugowania zdalnego.

    Zrzut ekranu przedstawiający interfejs użytkownika profilu uruchamiania debugowania we właściwościach projektu programu Visual Studio dla języków C# i .NET.

    W przeciwnym razie w przypadku programu .NET Framework zmienisz ustawienia debugowania zdalnego bezpośrednio na karcie Debugowanie.

    Zrzut ekranu przedstawiający kartę Debug we właściwościach projektu programu Visual Studio. Właściwość Użyj maszyny zdalnej jest ustawiona na

    zrzut ekranu przedstawiający kartę Debugowanie we właściwościach projektu programu Visual Studio. Właściwość Użyj maszyny zdalnej jest ustawiona na wartość

  5. Upewnij się, że pole tekstowe 'Katalog roboczy' jest puste.

  6. Wybierz opcję Użyj zdalnej maszynyi wpisz nazwamaszyny:port w polu. Numer portu jest wyświetlany w oknie debugera zdalnego.

    W tym przykładzie użyj:

    MJO-DL:4026 w programie Visual Studio 2022

    MJO-DL:4024 w programie Visual Studio 2019

    Numer portu zwiększa się o 2 w każdej wersji programu Visual Studio.

  7. Upewnij się, że nie wybrano opcji Włącz debugowanie kodu natywnego .

  8. Skompiluj projekt.

  9. Utwórz folder na komputerze zdalnym, pod tą samą ścieżką co folder Debug na komputerze, na którym jest zainstalowane Visual Studio: <ścieżka źródłowa>\MyWPF\MyWPF\bin\Debug.

  10. Skopiuj plik wykonywalny utworzony właśnie z komputera programu Visual Studio do nowo utworzonego folderu na komputerze zdalnym.

    Ostrożność

    Nie wprowadzaj zmian w kodzie ani ponownej kompilacji (lub musisz powtórzyć ten krok). Plik wykonywalny skopiowany na maszynę zdalną musi dokładnie odpowiadać lokalnemu źródle i symbolom.

    Projekt można skopiować ręcznie, użyć narzędzia XCopy, narzędzia Robocopy, programu PowerShell lub innych opcji.

  11. Upewnij się, że zdalny debuger jest uruchomiony na maszynie docelowej (jeśli tak nie jest, wyszukaj remote debugger w menu Start ). Okno zdalnego debugera wygląda następująco.

    Zrzut ekranu okna zdalnego debuggera dla VS 2022.

    Screenshot of remote debugger window for VS 2019.Zrzut ekranu przedstawiający okno zdalnego debugera dla programu VS 2019.Remote Debugger window okna debugera zdalnego

  12. W programie Visual Studio rozpocznij debugowanie (Debugowanie > Rozpocznij debugowanielub F5).

  13. Jeśli zostanie wyświetlony monit, wprowadź poświadczenia sieciowe, aby nawiązać połączenie z maszyną zdalną.

    Wymagane poświadczenia różnią się w zależności od konfiguracji zabezpieczeń sieci. Na przykład na komputerze domeny można wprowadzić nazwę domeny i hasło. Na komputerze innym niż należący do domeny możesz wprowadzić nazwę komputera i prawidłową nazwę konta użytkownika, taką jak MJO-DL\name@something.com, wraz z poprawnym hasłem.

    Powinno zostać wyświetlone okno główne aplikacji WPF na komputerze zdalnym.

  14. W razie potrzeby podejmij działanie, aby osiągnąć punkt przerwania. Powinien zostać wyświetlony komunikat, że punkt przerwania jest aktywny. Jeśli tak nie jest, symbole aplikacji nie zostały załadowane. Spróbuj ponownie i jeśli to nie zadziała, uzyskaj informacje o ładowaniu symboli i sposobach ich rozwiązywania w Opis plików symboli i ustawień symboli programu Visual Studio.

  15. Na maszynie z programem Visual Studio powinieneś zobaczyć, że wykonanie zostało zatrzymane w punkcie przerwania.

    Jeśli masz pliki inne niż kod, które muszą być używane przez aplikację, musisz uwzględnić je w projekcie programu Visual Studio. Utwórz folder projektu dla dodatkowych plików (w Eksploratorze rozwiązań kliknij przycisk Dodaj > Nowy folder). Następnie dodaj pliki do folderu (w Eksploratorze rozwiązań kliknij przycisk Dodaj > Istniejący element, a następnie wybierz pliki). Na stronie właściwości dla każdego pliku, ustaw opcję Kopiuj do katalogu wyjściowego na Kopiuj zawsze.

Zdalne debugowanie aplikacji .NET MAUI w systemie Windows

Aplikacje MAUI platformy .NET to spakowane aplikacje, które należy zarejestrować podczas wdrażania, a nie tylko skopiowane na maszynę zdalną. W celu zdalnego debugowania można wdrożyć rozpakową wersję aplikacji.

Użyj jednej z następujących metod do zdalnego debugowania:

  • Opublikuj aplikację na urządzeniu zdalnym jako aplikację rozpakową, wykonując kroki opisane w Publikowanie rozpakowanych aplikacji .NET MAUI dla systemu Windowsza pomocą interfejsu wiersza polecenia, a następnie wykonaj kroki opisane w tym artykule w celu zdalnego debugowania. (Pomiń kroki kopiowania aplikacji).

  • Wykonaj kroki opisane w tym artykule, w tym kroki tworzenia profilu uruchamiania debugowania dla projektu. Przed rozpoczęciem debugowania ręcznie edytuj plik launchSettings.json, zastępując wartość commandNameProject wartością MsixPackage, jak pokazano poniżej.

    "Remote Profile": {
      "commandName": "MsixPackage",
      "remoteDebugEnabled": true,
      "remoteDebugMachine": "170.200.20.22",
      "authenticationMode": "None"
    }
    

    Po rozpoczęciu debugowania ta metoda najpierw wdraża rozpakowana wersję aplikacji i uruchamia ją.

    Notatka

    Nie można edytować launchSettings.json w oknie dialogowym profilu uruchamiania debugowania po zmianie wartości na MsixPackage.

Konfigurowanie debugowania za pomocą symboli zdalnych

Powinno być możliwe debugowanie kodu za pomocą symboli wygenerowanych na komputerze programu Visual Studio. Wydajność zdalnego debugera jest znacznie lepsza w przypadku używania symboli lokalnych. Aby użyć symboli zdalnych, poinstruuj monitor debugowania, by wyszukiwał symbole na zdalnej maszynie.

Możesz użyć następującego przełącznika wiersza polecenia msvsmon, aby użyć symboli zdalnych dla kodu zarządzanego: Msvsmon /FallbackLoadRemoteManagedPdbs

Aby uzyskać więcej informacji, zobacz pomoc debugowania zdalnego (naciśnij F1 w oknie debugera zdalnego lub kliknij Pomoc > Użycie).