Algemene opties voor foutopsporing
Als u opties voor het foutopsporingsprogramma van Visual Studio wilt instellen, selecteert u Extra>Optiesen schakelt u onder Foutopsporing de selectievakjes naast de opties Algemeen in of uit. U kunt alle standaardinstellingen herstellen met Hulpmiddelen>Instellingen importeren en exporteren>Alle instellingen herstellen. Als u een subset met instellingen opnieuw wilt instellen, slaat u uw instellingen op met de wizard Instellingen importeren en exporteren voordat u de wijzigingen aanbrengt die u wilt testen en importeert u de opgeslagen instellingen daarna.
U kunt de volgende opties instellen Algemeen:
Vraag het voordat u alle onderbrekingspunten verwijdert: bevestiging is vereist voordat u de opdracht Alle onderbrekingspunten verwijderen voltooit.
Alle processen onderbreken wanneer één proces wordt onderbroken: alle processen waaraan het foutopsporingsprogramma is gekoppeld, worden onderbroken wanneer er een onderbreking plaatsvindt.
Onderbreek wanneer uitzonderingen AppDomain- of beheerde of systeemeigen grenzen overschrijden: Bij foutopsporing in beheerde of gemengde modus kan de algemene taalruntime uitzonderingen opvangen die de grenzen van het toepassingsdomein overschrijden of beheerde of systeemeigen grenzen overschrijden wanneer aan de volgende voorwaarden wordt voldaan.
Wanneer systeemeigen code beheerde code aanroept met COM Interop en de beheerde code een uitzondering genereert. Zie Inleiding tot COM Interop.
Wanneer beheerde code die wordt uitgevoerd in toepassingsdomein 1 beheerde code aanroept in toepassingsdomein 2 en de code in toepassingsdomein 2 een uitzondering genereert. Zie Programmeren met toepassingsdomeinen.
Wanneer code een functie aanroept met weerspiegeling en die functie een uitzondering genereert. Zie reflectie.
In condities 2 en 3 wordt de uitzondering soms onderschept door beheerde code in mscorlib
in plaats van door de common language runtime. Deze optie heeft geen invloed op het verbreken van uitzonderingen die door mscorlib
zijn opgevangen.
Foutopsporing op adresniveau inschakelen: hiermee schakelt u geavanceerde functies in voor foutopsporing op adresniveau (het venster Demontage, het venster Registreert en adresonderbrekingspunten).
- Demonteren weergeven als de bron niet beschikbaar is: hiermee wordt automatisch het venster Demontage weergegeven wanneer u foutopsporingscode opgeeft waarvoor de bron niet beschikbaar is.
Onderbrekingspuntfilters inschakelen: Hiermee kunt u filters instellen op onderbrekingspunten, zodat deze alleen van invloed zijn op specifieke processen, threads of computers.
De nieuwe Helper voor uitzonderingen gebruiken: hiermee schakelt u de uitzonderingshulp in die de uitzonderingsassistent vervangt. (Uitzonderingshulp wordt ondersteund vanaf Visual Studio 2017)
Notitie
Voor de beheerde code werd deze optie eerder Inschakelen van de uitzonderingsassistent genoemd.
Just My Code inschakelen: De debugger geeft alleen gebruikerscode weer en stapt in gebruikerscode ('Mijn code'), terwijl systeemcode en andere code die is geoptimaliseerd of die geen foutopsporingssymbolen heeft, wordt genegeerd.
- Waarschuwen als er geen gebruikerscode is bij het starten (alleen beheerd): wanneer foutopsporing begint met Just My Code ingeschakeld, wordt u met deze optie gewaarschuwd als er geen gebruikerscode is ('Mijn code').
Inschakelen van .NET Framework-bronstap: zorgt ervoor dat de debugger door de .NET Framework-bron heen kan stappen. Als u deze optie inschakelt, wordt Just My Code automatisch uitgeschakeld. .NET Framework-symbolen worden gedownload naar een cachelocatie. Wijzig de cachelocatie via het dialoogvenster Opties, categorie Foutopsporing, Symbolenpagina.
Stap over eigenschappen en operators (alleen beheerd): hiermee voorkomt u dat het foutopsporingsprogramma in eigenschappen en operators in beheerde code instapt.
Eigenschapsevaluatie en andere impliciete functie-aanroepen inschakelen: schakelt automatische evaluatie van eigenschappen en impliciete functie-aanroepen in variabelenvensters en het dialoogvenster QuickWatch in.
- functie Tekenreeksconversie aanroepen voor objecten in variabelenvensters (alleen C# en JavaScript): voert een impliciete aanroep voor tekenreeksconversie uit bij het evalueren van objecten in variabelenvensters. Het resultaat wordt weergegeven als een tekenreeks in plaats van de typenaam. Alleen van toepassing tijdens foutopsporing in C#-code. Deze instelling kan worden overschreven door het kenmerk DebuggerDisplay (zie Het kenmerk DebuggerDisplay gebruiken).
ondersteuning voor de bronserver inschakelen: geeft het foutopsporingsprogramma van Visual Studio door om bronbestanden op te halen van bronservers die het SrcSrv-protocol (srcsrv.dll
) implementeren. Team Foundation Server en de hulpprogramma's voor foutopsporing voor Windows zijn twee bronservers die het protocol implementeren. Zie de documentatie SrcSrv voor meer informatie over SrcSrv setup. Zie bovendien symbool (.pdb) en bronbestanden opgeven.
Belangrijk
Omdat het lezen van .pdb- bestanden willekeurige code in de bestanden kan uitvoeren, moet u ervoor zorgen dat u de server vertrouwt.
diagnostische berichten van de bronserver afdrukken naar het uitvoervenster: wanneer ondersteuning voor de bronserver is ingeschakeld, wordt met deze instelling de diagnostische weergave ingeschakeld.
bronserver toestaan voor gedeeltelijke vertrouwensassembly's (alleen beheerd): wanneer ondersteuning voor de bronserver is ingeschakeld, overschrijft deze instelling het standaardgedrag van het niet ophalen van bronnen voor gedeeltelijke vertrouwensassembly's.
Altijd niet-vertrouwde bronserveropdrachten uitvoeren zonderte vragen: wanneer ondersteuning voor de bronserver is ingeschakeld, overschrijft deze instelling het standaardgedrag van het vragen bij het uitvoeren van een niet-vertrouwde opdracht.
Ondersteuning voor Source Link inschakelen: geeft het foutopsporingsprogramma van Visual Studio aan om bronbestanden te downloaden voor .pdb--bestanden die bronkoppelingsgegevens bevatten. Voor meer informatie over Bronkoppeling, zie de specificatie van de bronkoppeling.
Belangrijk
Omdat Source Link bestanden downloadt met http of https, moet u ervoor zorgen dat u het .pdb--bestand vertrouwt.
- terugvallen op Git Credential Manager-verificatie voor alle bronkoppelingsaanvragen: wanneer ondersteuning voor Source Link is ingeschakeld en verificatie van een Source Link-aanvraag mislukt, roept Visual Studio vervolgens Git Credential Manager aan.
Volledige bronregel markeren voor onderbrekingspunten en huidige instructie (alleen C++ ): wanneer het foutopsporingsprogramma een onderbrekingspunt of huidige instructie markeert, wordt de hele regel gemarkeerd.
Vereisen dat bronbestanden exact overeenkomen met de oorspronkelijke versie: geeft aan dat het foutopsporingsprogramma controleert of een bronbestand overeenkomt met de versie van de broncode die wordt gebruikt om het uitvoerbare bestand te bouwen dat u foutopsporing gebruikt. Wanneer de versie niet overeenkomt, wordt u gevraagd een overeenkomende bron te vinden. Als er geen overeenkomende bron wordt gevonden, wordt de broncode niet weergegeven tijdens foutopsporing.
alle tekst van het uitvoervenster omleiden naar het venster Immediate: hiermee worden alle debugberichten verzonden die normaal gesproken in het venster Uitvoer worden weergegeven naar het venster Immediate.
Onbewerkte structuur van objecten weergeven in variabelenvensters: hiermee schakelt u alle aanpassingen van de objectstructuurweergave uit. Zie Aangepaste weergaven van beheerde objecten makenvoor meer informatie over weergaveaanpassingen.
JIT-optimalisatie onderdrukken bij modulebelasting (alleen beheerd): schakelt de JIT-optimalisatie van beheerde code uit wanneer een module wordt geladen en JIT wordt gecompileerd terwijl het foutopsporingsprogramma is gekoppeld. Door optimalisatie uit te schakelen, kan het eenvoudiger zijn om problemen op te sporen, hoewel dit ten koste gaat van de prestaties. Als u Just My Code gebruikt, kan het onderdrukken van JIT-optimalisatie ertoe leiden dat niet-gebruikerscode wordt weergegeven als gebruikerscode ('Mijn code'). Zie JIT-optimalisatie en foutopsporingvoor meer informatie.
JavaScript-foutopsporing inschakelen voor ASP.NET (Chrome, Microsoft Edge en IE): hiermee schakelt u het scriptdebugger in voor ASP.NET-apps. Bij eerste gebruik in Chrome moet u zich mogelijk aanmelden bij de browser om Chrome-extensies in te schakelen die u hebt geïnstalleerd. Schakel deze optie uit om terug te keren naar verouderd gedrag.
Schakel de multi-target JavaScript-debugger in om JavaScript in relevante doelen te debuggen (vereist het opnieuw starten van foutopsporing) Hiermee maakt u verbinding met de browser en back-end, zodat u uw code kunt debuggen die vanuit de editor op de client en server wordt uitgevoerd.
Dll-exports laden (alleen systeemeigen): laadt dll-exporttabellen. Symboolinformatie uit dll-exporttabellen kan handig zijn als u werkt met Windows-berichten, Windows-procedures (WindowProcs), COM-objecten of marshaling, of een dll waarvoor u geen symbolen hebt. Het lezen van dll-exportgegevens omvat enige overhead. Daarom is deze mogelijkheid standaard uitgeschakeld.
Als u wilt zien welke symbolen beschikbaar zijn in de exporttabel van een dll, gebruikt u dumpbin /exports
. Symbolen zijn beschikbaar voor elke 32-bits systeem-DLL. Door de dumpbin /exports
uitvoer te lezen, ziet u de exacte functienaam, inclusief niet-alfanumerieke tekens. Dit is handig voor het instellen van een onderbrekingspunt voor een functie. Functienamen uit DLL-exporttabellen kunnen elders in de debugger afgekapt voorkomen. De aanroepen worden weergegeven in de volgorde van aanroepen, waarbij de huidige functie (de diepst genestste) bovenaan staat. Zie dumpbin /exportsvoor meer informatie.
Diagram met parallelle stacks onderaan weergeven: hiermee bepaalt u de richting waarin stacks worden weergegeven in het venster Parallelle stacks.
Uitzonderingen voor GPU-geheugentoegang negeren als de geschreven gegevens de waardeniet hebben gewijzigd: hiermee worden racevoorwaarden genegeerd die zijn gedetecteerd tijdens foutopsporing als de gegevens niet zijn gewijzigd. Zie GPU-code voor foutopsporingvoor meer informatie.
Beheerde compatibiliteitsmodus gebruiken: vervangt de standaard-foutopsporingsengine door een verouderde versie om deze scenario's mogelijk te maken:
U gebruikt een andere .NET-taal dan C#, Visual Basic of F# die een eigen expressie-evaluator biedt (dit omvat C++/CLI).
U wilt Bewerken en Doorgaan voor C++-projecten inschakelen tijdens foutopsporing in de gemengde modus.
Notitie
Als u de beheerde compatibiliteitsmodus kiest, worden sommige functies uitgeschakeld die alleen in de standaard-foutopsporingsengine zijn geïmplementeerd. De verouderde foutopsporingsengine is vervangen in Visual Studio 2012.
Waarschuwen wanneer u aangepaste debugger-visualizers gebruikt voor potentieel onveilige processen (alleen beheerde code): Visual Studio waarschuwt u wanneer u een aangepaste debugger-visualizer gebruikt die code uitvoert in het te debuggen proces, omdat er mogelijk onveilige code wordt uitgevoerd.
nl-NL: Windows-debugheap-allocator inschakelen (alleen native): Schakelt de Windows-debugheap in om heapdiagnostiek te verbeteren. Als u deze optie inschakelt, is dit van invloed op de prestaties van foutopsporing.
Hulpprogramma's voor foutopsporing voor gebruikersinterfaces inschakelen voor XAML: de Live Visual-structuur en de Live Property Explorer-vensters worden weergegeven wanneer u begint met foutopsporing (F5) van een ondersteund projecttype. Zie XAML-eigenschappen inspecteren tijdens debuggenvoor meer informatie.
Geselecteerde elementen bekijken in de LiveVisualStructuur: Het XAML-element waarvan de context is geselecteerd, wordt ook geselecteerd in het Live Visual Tree-venster.
Runtime-hulpprogramma's weergeven in de toepassing: toont de Live Visual Tree-opdrachten in een werkbalk, in het hoofdvenster van de XAML-toepassing die wordt gedebugd.
XAML Hot Reload inschakelen: hiermee kunt u de functie XAML Hot Reload met XAML-code gebruiken wanneer uw app wordt uitgevoerd. (Deze functie werd eerder 'XAML Bewerken en Doorgaan' genoemd)
Just My XAML inschakelen: vanaf Visual Studio 2019 versie 16.4 wordt in de Live Visual Tree standaard alleen XAML weergegeven die is geclassificeerd als gebruikerscode. Als u deze optie uitschakelt, wordt alle gegenereerde XAML-code weergegeven in het hulpprogramma.
De selectiemodus uitschakelen wanneer een element is geselecteerd Vanaf Visual Studio 2019 versie 16.4 wordt de knop in-app werkbalkelementkiezer (Selectie inschakelen) uitgeschakeld wanneer een element is geselecteerd. Als u deze optie uitschakelt, blijft de elementselectie ingeschakeld totdat u nogmaals op de werkbalkknop in de app klikt.
XAML Hot Reload toepassen op document opslaan Vanaf Visual Studio 2019 versie 16.6 past u XAML Hot Reload toe wanneer u het document opslaat.
Diagnostische hulpprogramma's inschakelen tijdens foutopsporing: het venster Diagnostische hulpprogramma's wordt weergegeven terwijl u fouten opspoort.
Verstreken tijd PerfTip weergeven tijdens het debuggen: In het codevenster wordt de verstreken tijd van een bepaalde methodeaanroep weergegeven wanneer u aan het debuggen bent.
bewerken en doorgaan inschakelen: hiermee schakelt u de functionaliteit Bewerken en Doorgaan in tijdens het opsporen van fouten.
Systeemeigen bewerking inschakelen en doorgaan: u kunt de functionaliteit Bewerken en Doorgaan gebruiken tijdens het opsporen van fouten in systeemeigen C++-code. Zie Bewerken en Doorgaan (C++)voor meer informatie.
Wijzigingen toepassen op continue (alleen systeemeigen): Visual Studio compileert en past eventuele openstaande codewijzigingen toe die u hebt aangebracht bij het voortzetten van het proces vanuit een onderbrekingsstatus. Als deze optie niet is geselecteerd, kunt u ervoor kiezen om wijzigingen toe te passen met behulp van het codewijzigingen toepassen item onder het menu Foutopsporing.
Waarschuwingen voor verouderde code (alleen systeemeigen): Waarschuwingen over verouderde code ontvangen.
Knop "Run to Click" weergeven in de editor tijdens foutopsporing: Wanneer deze optie is geselecteerd, wordt de knop "Run to Click" weergegeven tijdens foutopsporing.
Sluit de console automatisch wanneer foutopsporing stopt: Geeft Visual Studio aan het einde van een foutopsporingssessie aan om de console te sluiten.
Snelle expressie-evaluatie (alleen beheerd) inschakelen: hiermee kan het foutopsporingsprogramma sneller evalueren door de uitvoering van eenvoudige eigenschappen en methoden te simuleren.
foutopsporingssymbolen laden in extern proces (alleen systeemeigen) Maakt deze geheugenoptimalisatie mogelijk tijdens foutopsporing.
Breng Visual Studio naar de voorgrond bij het breken in het foutopsporingsprogramma Schakelt Visual Studio over naar de voorgrond wanneer u pauzeert in het foutopsporingsprogramma.
nl-NL: Uitgevouwen gegevenstips geopend houden totdat u erop klikt Als deze optie is geselecteerd, blijft een uitgevouwen gegevenstip uitgevouwen totdat u ergens anders klikt.
Beschikbare opties in oudere versies van Visual Studio
Als u een oudere versie van Visual Studio gebruikt, zijn er mogelijk enkele extra opties aanwezig.
Edge-ontwikkelhulpprogramma's inschakelen voor UWP JavaScript-apps (experimenteel): hiermee schakelt u ontwikkelhulpprogramma's in voor UWP JavaScript-apps in Microsoft Edge.
verouderde Chrome JavaScript-foutopsporingsprogramma inschakelen voor ASP.NET: hiermee schakelt u het verouderde JavaScript-scriptdebugger voor ASP.NET-apps in. Bij eerste gebruik in Chrome moet u zich mogelijk aanmelden bij de browser om Chrome-extensies in te schakelen die u hebt geïnstalleerd.
De uitzonderingsassistent inschakelen: Voor beheerde code schakelt u de uitzonderingsassistent in. Vanaf Visual Studio 2017 heeft de Uitzonderingshulp de uitzonderingsassistent vervangen.
De aanroepstack op niet-verwerkte uitzonderingen afwikkelen: zorgt ervoor dat het venster Oproepstack de aanroepstack terugdraait naar het punt voordat de niet-verwerkte uitzondering zich voordeed.
Experimentele manier gebruiken om Chrome JavaScript-foutopsporing te starten bij het uitvoeren van Visual Studio als Administrator-: Geeft Visual Studio aan om een nieuwe manier te proberen om Chrome te starten tijdens het opsporen van JavaScript-foutopsporing.
Waarschuwen als er geen symbolen zijn bij het starten (alleen systeemeigen): er wordt een waarschuwingsdialoogvenster weergegeven wanneer u fouten in een programma opsneert waarvoor het foutopsporingsprogramma geen symboolgegevens bevat.
Waarschuwen als scriptopsporing is uitgeschakeld bij het starten: er wordt een waarschuwingsdialoogvenster weergegeven wanneer het foutopsporingsprogramma wordt gestart met scriptopsporing uitgeschakeld.
Beheerde compatibiliteitsmodus gebruiken: wanneer deze optie is geselecteerd, gebruikt het foutopsporingsprogramma van Visual Studio 2010 het beheerde foutopsporingsprogramma van Visual Studio 2010. Dit is vereist bij het opsporen van fouten in C++/CLI-code.
Systeemeigen compatibiliteitsmodus gebruiken: wanneer deze optie is geselecteerd, gebruikt het foutopsporingsprogramma van Visual Studio 2010 het systeemeigen foutopsporingsprogramma in plaats van het nieuwe systeemeigen foutopsporingsprogramma.
- Gebruik deze optie wanneer u fouten in .NET C++-code opspoort, omdat de nieuwe foutopsporingsengine geen ondersteuning biedt voor het evalueren van .NET C++-expressies. Als u de systeemeigen compatibiliteitsmodus inschakelt, worden echter veel functies uitgeschakeld die afhankelijk zijn van de huidige implementatie van het foutopsporingsprogramma. De verouderde engine mist bijvoorbeeld veel visualisaties voor ingebouwde typen, zoals
std::string
in Visual Studio 2015-projecten. Gebruik Visual Studio 2013-projecten voor de optimale foutopsporingservaring in deze gevallen.