Fjärrfelsökning av ett C#- eller Visual Basic-projekt i Visual Studio
Om du vill felsöka ett Visual Studio-program som har distribuerats på en annan dator installerar och kör du fjärrverktygen på datorn där du distribuerade appen, konfigurerar projektet för att ansluta till fjärrdatorn från Visual Studio och kör sedan appen.
Information om fjärrfelsökning av Universella Windows-appar (UWP) finns i Felsöka ett installerat apppaket.
Krav
Fjärrfelsökaren stöds i Windows 7 och senare och på versioner av Windows Server från och med Windows Server 2008 Service Pack 2. En fullständig lista över krav finns i Krav.
Notera
Felsökning mellan två datorer som är anslutna via en proxyserver stöds inte. Felsökning över en anslutning med hög svarstid eller låg bandbredd, till exempel internetuppringning eller via Internet mellan länder/regioner, rekommenderas inte och kan misslyckas eller vara oacceptabelt långsam.
Ladda ned och installera fjärrverktygen
På fjärrenheten eller servern som du vill felsöka på i stället för Visual Studio-datorn laddar du ned och installerar rätt version av fjärrverktygen från länkarna i följande tabell.
- Ladda ned den senaste uppdateringen av fjärrverktygen för din version av Visual Studio. Tidigare versioner av fjärrverktyg är inte kompatibla med senare Visual Studio-versioner. (Om du till exempel använder Visual Studio 2019 laddar du ned den senaste uppdateringen av fjärrverktygen för Visual Studio 2019. I det här scenariot ska du inte ladda ned fjärrverktygen för Visual Studio 2022.)
- Ladda ned fjärrverktygen med samma arkitektur som den dator som du installerar dem på. Om du till exempel vill felsöka x86-program på en fjärrdator som kör ett x64-operativsystem installerar du x64-fjärrverktygen. Om du vill felsöka x86-, ARM- eller x64-program på ett ARM64-operativsystem installerar du ARM64-fjärrverktygen.
Version | Länk | Anteckningar |
---|---|---|
Visual Studio 2022 | Fjärrverktyg | Kompatibel med alla Visual Studio 2022-versioner. Ladda ned den version som matchar enhetens operativsystem (x86, x64 (AMD64) eller ARM64). I äldre versioner av Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. |
Visual Studio 2019 | Fjärrverktyg | Fjärrverktyg för Visual Studio 2019 finns tillgängliga från My.VisualStudio.com. Om du uppmanas att göra det ansluter du till det kostnadsfria Visual Studio Dev Essentials--programmet eller loggar in med ditt Visual Studio-prenumerations-ID. Ladda ned den version som matchar enhetens operativsystem (x86, x64 (AMD64) eller ARM64). I äldre versioner av Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. |
Visual Studio 2017 | Fjärrverktyg | Fjärrverktyg för Visual Studio 2017 finns tillgängliga från My.VisualStudio.com. Om du uppmanas att göra det ansluter du till det kostnadsfria Visual Studio Dev Essentials--programmet eller loggar in med ditt Visual Studio-prenumerations-ID. Ladda ned den version som matchar enhetens operativsystem (x86, x64 (AMD64) eller ARM64). På Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. |
Visual Studio 2015 | Fjärrverktyg | Fjärrverktyg för Visual Studio 2015 är tillgängliga från My.VisualStudio.com. Om du uppmanas att göra det ansluter du till det kostnadsfria Visual Studio Dev Essentials--programmet eller loggar in med ditt Visual Studio-prenumerations-ID. På Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. |
Visual Studio 2013 | Fjärrverktyg | Nedladdningssida i Dokumentation om Visual Studio 2013 |
Visual Studio 2012 | Fjärrverktyg | Nedladdningssida i Dokumentation om Visual Studio 2012 |
Version | Länk | Anteckningar |
---|---|---|
Visual Studio 2019 | Fjärrverktyg | Kompatibel med alla Visual Studio 2019-versioner. Ladda ned den version som matchar enhetens operativsystem (x86, x64 (AMD64) eller ARM64). På Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. För den senaste versionen av fjärrverktygen öppnar du dokumentet Visual Studio 2022. |
Visual Studio 2017 | Fjärrverktyg | Kompatibel med alla Visual Studio 2017-versioner. Ladda ned den version som matchar enhetens operativsystem (x86, x64 (AMD64) eller ARM64). På Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. |
Visual Studio 2015 | Fjärrverktyg | Fjärrverktyg för Visual Studio 2015 är tillgängliga från My.VisualStudio.com. Om du uppmanas att göra det ansluter du till det kostnadsfria Visual Studio Dev Essentials--programmet eller loggar in med ditt Visual Studio-prenumerations-ID. På Windows Server kan du läsa Avblockera filnedladdningen om du vill ha hjälp med att ladda ned fjärrverktygen. |
Visual Studio 2013 | Fjärrverktyg | Nedladdningssida i Dokumentation om Visual Studio 2013 |
Visual Studio 2012 | Fjärrverktyg | Nedladdningssida i Dokumentation om Visual Studio 2012 |
Du kan köra fjärrfelsökaren genom att kopiera msvsmon.exe till fjärrdatorn i stället för att installera fjärrverktygen. Konfigurationsguiden för fjärrfelsökaren (rdbgwiz.exe) är dock endast tillgänglig när du installerar fjärrverktygen. Du kan behöva använda guiden för konfiguration om du vill köra fjärrfelsökaren som en tjänst. Mer information finns i (valfritt) Konfigurera fjärrfelsökaren som en tjänst.
Not
- Om du vill felsöka Windows 10- eller senare-appar på ARM-enheter använder du ARM64, som är tillgängligt med den senaste versionen av fjärrverktygen.
- Om du vill felsöka Windows 10-appar på Windows RT-enheter använder du ARM, som endast är tillgängligt i nedladdningen av Visual Studio 2015-fjärrverktyg.
- Om du vill felsöka x64-appar på ett ARM64-operativsystem kör du x64-msvsmon.exe som är installerad med ARM64-fjärrverktygen.
Tips
I vissa scenarier kan det vara mest effektivt att köra fjärrfelsökaren från en fildelning. För mer information, se Kör fjärrfelsökaren från en fildelning.
Konfigurera fjärrfelsökaren
På fjärrdatorn letar du upp och startar Remote Debugger- från menyn Start.
Om du inte har administratörsbehörighet på fjärrdatorn högerklickar du på appen Fjärrfelsökare och väljer Kör som administratör. Annars är det bara att starta det normalt.
Om du planerar att ansluta till en process som körs som administratör eller körs under ett annat användarkonto (till exempel IIS) högerklickar du på fjärrfelsökaren app och väljer Kör som administratör. Mer information finns i Kör fjärrfelsökaren som administratör.
Första gången du startar fjärrfelsökaren (eller innan du har konfigurerat den) visas guiden Fjärrfelsökningskonfiguration.
I de flesta scenarier väljer du Nästa tills du kommer till sidan Konfigurera Windows-brandväggen i guiden.
Om Windows Web Services-API:et inte är installerat, vilket endast sker på Windows Server 2008 R2, väljer du knappen Installera.
Välj minst en nätverkstyp som du vill använda fjärrverktygen på. Om datorerna är anslutna via en domän måste du välja det första objektet. Om datorerna är anslutna via en arbetsgrupp eller hemgrupp väljer du det andra eller tredje objektet efter behov.
Välj sedan Slutför för att starta fjärrfelsökaren.
Välj sedan Konfigurera fjärrfelsökning för att starta fjärrfelsökaren.
När konfigurationen är klar visas fönstret Fjärrfelsökare.
Fjärrfelsökaren väntar nu på en anslutning. Använd servernamnet och portnumret som visas för att ange fjärranslutningskonfigurationen i Visual Studio.
Om du vill stoppa fjärrfelsökaren väljer du Fil>Avsluta. Du kan starta om den från menyn Starta eller från kommandoraden:
<Remote debugger installation directory>\msvsmon.exe
Anteckning
Om du behöver lägga till behörigheter för ytterligare användare ändrar du autentiseringsläget eller portnumret för fjärrfelsökaren, se Konfigurera fjärrfelsökaren.
Fjärravlusa det projektet
Felsökaren kan inte distribuera Visual C# eller Visual Basic-skrivbordsprogram till en fjärrdator, men du kan fortfarande felsöka dem via fjärranslutning på följande sätt. Följande procedur förutsätter att du vill felsöka den på en dator med namnet MJO-DL, enligt bilden nedan.
Skapa ett WPF-projekt med namnet MyWpf.
Om du försöker fjärrsöka en MAUI-app i stället för WPF kan du läsa Fjärrfelsöka en .NET MAUI-app i Windows.
Ange en brytpunkt någonstans i koden som är lätt att nå.
Du kan till exempel ange en brytpunkt i en knapphanterare. Om du vill göra detta öppnar du MainWindow.xaml och lägger till en knappkontroll från verktygslådan och dubbelklickar sedan på knappen för att öppna dess hanterare.
Högerklicka på projektet i Solution Explorer och välj Egenskaper.
På sidan Egenskaper väljer du fliken Felsöka.
För C#-projekt som riktar sig till .NET Core eller .NET 5+, med början i Visual Studio 2022, väljer du Felsökningsstartprofiler UI från fliken Felsökning för att konfigurera inställningar för fjärrfelsökning.
I annat fall ändrar du fjärrfelsökningsinställningarna direkt på fliken Felsöka för .NET Framework.
Kontrollera att textrutan Arbetskatalog är tom.
Välj Använd fjärrdatoroch skriv yourmachinename:port i textrutan. (Portnumret visas i fjärrfelsökningsfönstret. Portnumret ökar 2 i varje version av Visual Studio).
I det här exemplet använder du:
MJO-DL:4026 i Visual Studio 2022
MJO-DL:4024 i Visual Studio 2019
Kontrollera att Aktivera intern kodfelsökning inte är markerat.
Skapa projektet.
Skapa en mapp på fjärrdatorn som är samma sökväg som mappen Debug på Visual Studio-datorn: <källsökväg>\MyWPF\MyWPF\bin\Debug.
Kopiera den körbara fil som du nyss skapade från Visual Studio-datorn till den nyligen skapade mappen på fjärrdatorn.
Försiktighet
Gör inte ändringar i koden eller återskapa (eller så måste du upprepa det här steget). Den körbara fil som du kopierade till fjärrdatorn måste exakt matcha din lokala källa och dina symboler.
Du kan kopiera projektet manuellt, använda XCopy, Robocopy, PowerShell eller andra alternativ.
Kontrollera att fjärrfelsökaren körs på måldatorn (om den inte är det söker du efter fjärrfelsökare på menyn Starta). Fjärrfelsökarfönstret ser ut så här.
I Visual Studio börjar du felsöka (Felsök > Starta felsökningeller F5).
Om du uppmanas att göra det anger du autentiseringsuppgifter för nätverket för att ansluta till fjärrdatorn.
De nödvändiga autentiseringsuppgifterna varierar beroende på nätverkets säkerhetskonfiguration. På en domändator kan du till exempel ange ditt domännamn och lösenord. På en dator som inte är domän kan du ange datornamnet och ett giltigt användarnamn, till exempel MJO-DL\name@something.com, tillsammans med rätt lösenord.
Du bör se att WPF-programmets huvudfönster är öppet på fjärrdatorn.
Om det behövs vidtar du åtgärder för att nå brytpunkten. Du bör se att brytpunkten är aktiv. Om så inte är fallet har symbolerna för programmet inte laddats. Försök igen, och om det inte fungerar får du information om att läsa in symboler och hur du felsöker dem i Understanding symbol files and Visual Studio's symbol settings.
På Visual Studio-datorn bör du se att körningen har stoppats vid brytpunkten.
Om du har filer som inte är kodfiler som måste användas av programmet måste du inkludera dem i Visual Studio-projektet. Skapa en projektmapp för de ytterligare filerna (i Solution Explorerklickar du på Lägg till > ny mapp). Lägg sedan till filerna i mappen (i Solution Explorerklickar du på Lägg till > befintligt objektoch väljer sedan filerna). På sidan Egenskaper för varje fil anger du Kopiera till utdatakatalog till Kopiera alltid.
Fjärrfelsöka en .NET MAUI-app i Windows
.NET MAUI-appar är paketerade appar som måste registreras när de distribueras, inte bara kopieras till en fjärrdator. För att felsöka på distans kan du distribuera en icke-packad version av appen.
Använd någon av följande metoder för fjärrfelsökning:
Publicera appen på fjärrenheten som en uppackad app med hjälp av stegen som beskrivs i Använd CLI för att publicera uppackade .NET MAUI-appar för Windowsoch följ sedan stegen i den här artikeln för fjärrfelsökning. (Hoppa över stegen för att kopiera appen.)
Följ stegen i den här artikeln, inklusive steg för att skapa en startprofil för felsökning för projektet. Innan du börjar felsöka redigerar du filen launchSettings.json manuellt och ersätter värdet commandName
Project
medMsixPackage
, som du ser här."Remote Profile": { "commandName": "MsixPackage", "remoteDebugEnabled": true, "remoteDebugMachine": "170.200.20.22", "authenticationMode": "None" }
När du börjar felsöka distribuerar den här metoden först en uppackad version av appen och startar sedan den.
Not
Du kan inte redigera launchSettings.json i dialogrutan Starta profil för felsökning när du har ändrat värdet till
MsixPackage
.
Konfigurera felsökning med fjärrsymboler
Du bör kunna felsöka koden med de symboler som du genererar på Visual Studio-datorn. Fjärrfelsökarens prestanda är mycket bättre när du använder lokala symboler. Om du måste använda fjärrsymboler måste du tala om för fjärrfelsökningsövervakaren att söka efter symboler på fjärrdatorn.
Du kan använda följande kommandoradsväxel msvsmon för att använda fjärrsymboler för hanterad kod: Msvsmon /FallbackLoadRemoteManagedPdbs
Mer information finns i hjälpen för fjärrfelsökning (tryck på F1- i fjärrfelsökningsfönstret eller klicka på Hjälp > Användning).