Externe foutopsporing van een C# of Visual Basic-project in Visual Studio
Als u fouten wilt opsporen in een Visual Studio-toepassing die is geïmplementeerd op een andere computer, installeert en voert u de externe hulpprogramma's uit op de computer waarop u uw app hebt geïmplementeerd, configureert u uw project om verbinding te maken met de externe computer vanuit Visual Studio en voert u vervolgens uw app uit.
Zie Fouten opsporen in een geïnstalleerd app-pakketvoor informatie over externe foutopsporing in Universal Windows-apps (UWP).
Eisen
Het externe foutopsporingsprogramma wordt ondersteund in Windows 7 en hoger en in versies van Windows Server vanaf Windows Server 2008 Service Pack 2. Zie Vereistenvoor een volledige lijst met vereisten.
Notitie
Foutopsporing tussen twee computers die zijn verbonden via een proxy, wordt niet ondersteund. Foutopsporing via een verbinding met hoge latentie of lage bandbreedte, zoals inbelinternet of via internet in landen/regio's, wordt niet aanbevolen en kan mislukken of onaanvaardbaar traag zijn.
De externe hulpprogramma's downloaden en installeren
Download en installeer op het externe apparaat of de server waarop u fouten wilt opsporen in plaats van op de Visual Studio-computer de juiste versie van de externe hulpprogramma's via de koppelingen in de volgende tabel.
- Download de meest recente update van de externe hulpprogramma's voor uw versie van Visual Studio. Eerdere versies van externe hulpprogramma's zijn niet compatibel met latere Versies van Visual Studio. (Als u bijvoorbeeld Visual Studio 2019 gebruikt, downloadt u de nieuwste update van de externe hulpprogramma's voor Visual Studio 2019. In dit scenario downloadt u de externe hulpprogramma's voor Visual Studio 2022 niet.)
- Download de externe hulpprogramma's met dezelfde architectuur als de computer waarop u ze installeert. Als u bijvoorbeeld x86-toepassingen wilt opsporen op een externe computer waarop een x64-besturingssysteem wordt uitgevoerd, installeert u de externe x64-hulpprogramma's. Als u fouten wilt opsporen in x86-, ARM- of x64-toepassingen op een ARM64-besturingssysteem, installeert u de externe ARM64-hulpprogramma's.
Versie | Verbinden | Notities |
---|---|---|
Visual Studio 2022 | Externe hulpprogramma's | Compatibel met alle Visual Studio 2022-versies. Download de versie die overeenkomt met het besturingssysteem van uw apparaat (x86, x64 (AMD64) of ARM64. Zie voor hulp bij het downloaden van de externe hulpprogramma's in oudere versies van Windows Server, De bestandsdownload deblokkeren. |
Visual Studio 2019 | Externe hulpprogramma's | Externe hulpprogramma's voor Visual Studio 2019 zijn beschikbaar via My.VisualStudio.com. Als u hierom wordt gevraagd, kunt u deelnemen aan de gratis Visual Studio Dev Essentials programma of u aanmelden met uw Visual Studio-abonnements-id. Download de versie die overeenkomt met het besturingssysteem van uw apparaat (x86, x64 (AMD64) of ARM64. Zie voor hulp bij het downloaden van de externe hulpprogramma's in oudere versies van Windows Server, De bestandsdownload deblokkeren. |
Visual Studio 2017 | Externe hulpprogramma's | Externe hulpprogramma's voor Visual Studio 2017 zijn beschikbaar via My.VisualStudio.com. Als u hierom wordt gevraagd, kunt u deelnemen aan de gratis Visual Studio Dev Essentials programma of u aanmelden met uw Visual Studio-abonnements-id. Download de versie die overeenkomt met het besturingssysteem van uw apparaat (x86, x64 (AMD64) of ARM64. Zie op Windows Server Het downloaden van bestanden deblokkeren voor hulp bij het downloaden van de externe hulpprogramma's. |
Visual Studio 2015 | Externe hulpprogramma's | Externe hulpprogramma's voor Visual Studio 2015 zijn beschikbaar via My.VisualStudio.com. Als u hierom wordt gevraagd, kunt u deelnemen aan de gratis Visual Studio Dev Essentials programma of u aanmelden met uw Visual Studio-abonnements-id. Zie op Windows Server Het downloaden van bestanden deblokkeren voor hulp bij het downloaden van de externe hulpprogramma's. |
Visual Studio 2013 | Externe hulpprogramma's | Downloadpagina in documentatie voor Visual Studio 2013 |
Visual Studio 2012 | Externe hulpprogramma's | Downloadpagina in documentatie voor Visual Studio 2012 |
Versie | Verbinden | Notities |
---|---|---|
Visual Studio 2019 | Externe hulpprogramma's | Compatibel met alle Versies van Visual Studio 2019. Download de versie die overeenkomt met het besturingssysteem van uw apparaat (x86, x64 (AMD64) of ARM64. Zie op Windows Server Het downloaden van bestanden deblokkeren voor hulp bij het downloaden van de externe hulpprogramma's. Open het Visual Studio 2022-documentvoor de meest recente versie van de externe hulpprogramma's. |
Visual Studio 2017 | Externe hulpprogramma's | Compatibel met alle Versies van Visual Studio 2017. Download de versie die overeenkomt met het besturingssysteem van uw apparaat (x86, x64 (AMD64) of ARM64. Zie op Windows Server Het downloaden van bestanden deblokkeren voor hulp bij het downloaden van de externe hulpprogramma's. |
Visual Studio 2015 | Externe hulpprogramma's | Externe hulpprogramma's voor Visual Studio 2015 zijn beschikbaar via My.VisualStudio.com. Als u hierom wordt gevraagd, kunt u deelnemen aan de gratis Visual Studio Dev Essentials programma of u aanmelden met uw Visual Studio-abonnements-id. Zie op Windows Server Het downloaden van bestanden deblokkeren voor hulp bij het downloaden van de externe hulpprogramma's. |
Visual Studio 2013 | Externe hulpprogramma's | Downloadpagina in documentatie voor Visual Studio 2013 |
Visual Studio 2012 | Externe hulpprogramma's | Downloadpagina in documentatie voor Visual Studio 2012 |
U kunt het externe foutopsporingsprogramma uitvoeren door msvsmon.exe te kopiëren naar de externe computer in plaats van de externe hulpprogramma's te installeren. De Configuratiewizard voor de externe foutopsporingstool (rdbgwiz.exe) is alleen beschikbaar wanneer u de externe hulpmiddelen installeert. Mogelijk moet u de wizard gebruiken voor configuratie als u het externe foutopsporingsprogramma als een service wilt uitvoeren. Zie (optioneel) Het externe foutopsporingsprogramma configureren als een servicevoor meer informatie.
Notitie
- Als u fouten wilt opsporen in Windows 10- of hoger-apps op ARM-apparaten, gebruikt u ARM64, die beschikbaar is met de nieuwste versie van de externe hulpprogramma's.
- Als u fouten wilt opsporen in Windows 10-apps op Windows RT-apparaten, gebruikt u ARM, dat alleen beschikbaar is in de download van externe hulpprogramma's van Visual Studio 2015.
- Als u fouten wilt opsporen in x64-apps op een ARM64-besturingssysteem, voert u de x64-msvsmon.exe uit die is geïnstalleerd met de externe ARM64-hulpprogramma's.
Tip
In sommige scenario's kan het meest efficiënt zijn om het externe foutopsporingsprogramma uit te voeren vanuit een bestandsshare. Zie Het externe foutopsporingsprogramma uitvoeren vanuit een bestandssharevoor meer informatie.
Het externe foutopsporingsprogramma instellen
Zoek en start op de externe computer de Remote Debugger in het menu Start.
Als u geen beheerdersmachtigingen op de externe computer hebt, klikt u met de rechtermuisknop op de externe foutopsporingsprogramma-app en selecteert u Als administrator uitvoeren. Anders start u het gewoon normaal.
Als u van plan bent een proces te koppelen dat wordt uitgevoerd als beheerder of wordt uitgevoerd onder een ander gebruikersaccount (zoals IIS), klikt u met de rechtermuisknop op de Remote Debugger-app en selecteert u Als administrator uitvoeren. Zie Het externe foutopsporingsprogramma uitvoeren als beheerdervoor meer informatie.
De eerste keer dat u het externe foutopsporingsprogramma start (of voordat u het hebt geconfigureerd), wordt de wizard configuratie voor externe foutopsporing weergegeven.
Kies in de meeste scenario's Volgende totdat u bij de pagina Windows Firewall configureren van de wizard komt.
Als de Windows Web Services-API niet is geïnstalleerd, wat alleen op Windows Server 2008 R2 gebeurt, selecteert u de knop Installeren.
Selecteer ten minste één netwerktype waarvoor u de externe hulpprogramma's wilt gebruiken. Als de computers zijn verbonden via een domein, moet u het eerste item kiezen. Als de computers zijn verbonden via een werkgroep of thuisgroep, kiest u het tweede of derde item indien van toepassing.
Selecteer vervolgens Voltooien om het externe foutopsporingsprogramma te starten.
Selecteer vervolgens Externe foutopsporing configureren om het externe foutopsporingsprogramma te starten.
Wanneer de configuratie is voltooid, wordt het venster Remote Debugger weergegeven.
Het externe foutopsporingsprogramma wacht nu op een verbinding. Gebruik de servernaam en het poortnummer dat wordt weergegeven om de configuratie van de externe verbinding in Te stellen in Visual Studio.
Als u het externe foutopsporingsprogramma wilt stoppen, selecteert u Bestand>Afsluiten. U kunt het opnieuw starten vanuit het menu Start of vanaf de opdrachtregel:
<Remote debugger installation directory>\msvsmon.exe
Notitie
Als u machtigingen wilt toevoegen voor extra gebruikers, de verificatiemodus of het poortnummer voor het externe foutopsporingsprogramma wilt wijzigen, raadpleegt u Het externe foutopsporingsprogramma configureren.
Externe foutopsporing in het project
Het foutopsporingsprogramma kan Visual C# of Visual Basic-bureaubladtoepassingen niet implementeren op een externe computer, maar u kunt ze als volgt op afstand opsporen. In de volgende procedure wordt ervan uitgegaan dat u fouten wilt opsporen op een computer met de naam MJO-DL, zoals wordt weergegeven in de onderstaande afbeelding.
Maak een WPF-project met de naam MyWpf.
Zie Remote-debuggen van een .NET MAUI-app op Windowsals u een MAUI-app op afstand probeert te debuggen in plaats van WPF.
Stel een onderbrekingspunt ergens in de code in die gemakkelijk te bereiken is.
U kunt bijvoorbeeld een onderbrekingspunt instellen in een knophandler. Hiervoor opent u MainWindow.xaml en voegt u een knopbesturingselement toe vanuit de werkset en dubbelklikt u op de knop om de handler te openen.
Klik in Solution Explorer met de rechtermuisknop op het project en kies Eigenschappen.
Kies op de pagina Eigenschappen het tabblad Foutopsporing.
Voor C#-projecten die gericht zijn op .NET Core of .NET 5+, te beginnen in Visual Studio 2022, kiest u de gebruikersinterface voor het starten van fouten op het tabblad Foutopsporing om instellingen voor externe foutopsporing te configureren.
Anders wijzigt u voor .NET Framework instellingen voor externe foutopsporing rechtstreeks op het tabblad Foutopsporing.
Zorg ervoor dat het tekstvak werkmap leeg is.
Kies Externe machinegebruiken en typ yourmachinename:port in het tekstvak. (Het poortnummer wordt weergegeven in het venster van het externe foutopsporingsprogramma. Het poortnummer wordt verhoogd naar 2 in elke versie van Visual Studio).
In dit voorbeeld gebruikt u:
MJO-DL:4026 in Visual Studio 2022
MJO-DL:4024 in Visual Studio 2019
Zorg ervoor dat systeemeigen codeopsporing inschakelen niet is geselecteerd.
Bouw het project.
Maak een map op de externe computer die hetzelfde pad is als de map Debug op uw Visual Studio-computer: <bronpad>\MyWPF\MyWPF\bin\Debug.
Kopieer het uitvoerbare bestand dat u zojuist hebt gemaakt van uw Visual Studio-computer naar de zojuist gemaakte map op de externe computer.
Voorzichtigheid
Breng geen wijzigingen aan in de code of bouw opnieuw (of u moet deze stap herhalen). Het uitvoerbare bestand dat u naar de externe computer hebt gekopieerd, moet exact overeenkomen met uw lokale bron en symbolen.
U kunt het project handmatig kopiëren, XCopy, Robocopy, PowerShell of andere opties gebruiken.
Zorg ervoor dat het externe foutopsporingsprogramma wordt uitgevoerd op de doelcomputer (als dit niet het geval is, zoekt u naar Remote Debugger in het menu Start). Het venster van de externe debugger ziet er als volgt uit.
Start foutopsporing in Visual Studio (Foutopsporing > Start Foutopsporingof F5).
Voer desgevraagd netwerkreferenties in om verbinding te maken met de externe computer.
De vereiste referenties variëren, afhankelijk van de beveiligingsconfiguratie van uw netwerk. U kunt bijvoorbeeld op een domeincomputer uw domeinnaam en wachtwoord invoeren. Op een niet-domeincomputer kunt u de computernaam en een geldige gebruikersnaam invoeren, zoals MJO-DL\name@something.com, samen met het juiste wachtwoord.
U ziet dat het hoofdvenster van de WPF-toepassing is geopend op de externe computer.
Neem indien nodig actie om het onderbrekingspunt te bereiken. U moet zien dat het breekpunt actief is. Als dit niet het is, zijn de symbolen voor de toepassing niet geladen. Probeer het opnieuw en als dat niet werkt, krijgt u informatie over het laden van symbolen en hoe u deze kunt oplossen op Informatie over symboolbestanden en symboolinstellingen van Visual Studio.
Op de Visual Studio-machine ziet u dat de uitvoering is gestopt op het onderbrekingspunt.
Als u niet-codebestanden hebt die door de toepassing moeten worden gebruikt, moet u ze opnemen in het Visual Studio-project. Maak een projectmap voor de extra bestanden (klik in Solution Explorerop > Nieuwe map toevoegen). Voeg vervolgens de bestanden toe aan de map (klik in Solution Explorerop > Bestaand item toevoegenen selecteer vervolgens de bestanden). Stel op de pagina Eigenschappen voor elk bestand de optie 'Kopiëren naar uitvoermap' in op 'Altijd kopiëren'.
Externe foutopsporing van een .NET MAUI-app op Windows
.NET MAUI-apps zijn verpakte apps die moeten worden geregistreerd bij de implementatie, niet alleen gekopieerd naar een externe computer. Als u externe foutopsporing wilt uitvoeren, kunt u een uitgepakte versie van de app implementeren.
Gebruik een van de volgende methoden om externe foutopsporing op te sporen:
Publiceer de app op het externe apparaat als een uitgepakte app met behulp van de stappen die worden beschreven in Gebruik de CLI om uitgepakte .NET MAUI-apps voor Windowste publiceren en volg de stappen in dit artikel om externe foutopsporing op te sporen. (Sla de stappen voor het kopiëren van de app over.)
Volg de stappen in dit artikel, inclusief stappen voor het maken van een startprofiel voor foutopsporing voor het project. Voordat u begint met foutopsporing, bewerkt u het launchSettings.json bestand handmatig, waarbij u de commandName
Project
-waarde vervangt doorMsixPackage
, zoals hier wordt weergegeven."Remote Profile": { "commandName": "MsixPackage", "remoteDebugEnabled": true, "remoteDebugMachine": "170.200.20.22", "authenticationMode": "None" }
Wanneer u foutopsporing start, implementeert deze methode eerst een uitgepakte versie van de app en start deze.
Notitie
U kunt launchSettings.json niet bewerken in het dialoogvenster Profiel voor foutopsporing nadat u de waarde wijzigt in
MsixPackage
.
Debuggen instellen met externe symbolen
U moet fouten in uw code kunnen opsporen met de symbolen die u op de Visual Studio-computer genereert. De prestaties van het externe foutopsporingsprogramma zijn veel beter wanneer u lokale symbolen gebruikt. Als u externe symbolen moet gebruiken, moet u de monitor voor externe foutopsporing laten weten om te zoeken naar symbolen op de externe computer.
U kunt de volgende msvsmon-opdrachtregelswitch gebruiken om externe symbolen te gebruiken voor beheerde code: Msvsmon /FallbackLoadRemoteManagedPdbs
Zie de hulp voor externe foutopsporing (druk op F1 in het venster voor externe foutopsporing of klik op Help > Gebruik).