Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
En brytpunkt är en plats i körbar kod där operativsystemet stoppar körningen och går in i felsökningsprogrammet. På så sätt kan du analysera målet och utfärda felsökningskommandon.
Du kan ange platsen för en brytpunkt efter virtuell adress, modul- och rutinförskjutningar eller källfil och radnummer (i källläge). Om du sätter en brytpunkt på en rutin utan förskjutning aktiveras brytpunkten när rutinen anropas.
Det finns flera ytterligare typer av brytpunkter:
En brytpunkt kan associeras med en viss tråd.
En brytpunkt kan möjliggöra ett fast antal genomgångar genom en adress innan den utlöses.
En brytpunkt kan automatiskt utfärda vissa kommandon när den utlöses.
En brytpunkt kan ställas in på icke-körbart minne och hålla utkik efter den platsen som ska läsas eller skrivas till.
Om du felsöker mer än en process i användarläge beror samlingen av brytpunkter på den aktuella processen. Om du vill visa eller ändra en process' brytpunkter måste du välja den som aktuell process. Mer information om den aktuella processen finns i Kontrollera processer och trådar.
Felsökningskommandon för att kontrollera och visa brytpunkter
Om du vill styra eller visa brytpunkter kan du använda följande metoder:
Använd kommandot bl (Brytpunktslista) för att visa en lista över befintliga brytpunkter och deras aktuella status.
Använd kommandot .bpcmds (Visa brytpunktskommandon) för att visa alla brytpunkter tillsammans med de kommandon som användes för att skapa dem.
Använd kommandot bp (Ange brytpunkt) för att ange en ny brytpunkt.
Använd kommandot bu (Ange olöst brytpunkt) för att ange en ny brytpunkt. Brytpunkter som anges med bu kallas för olösta brytpunkter. de har andra egenskaper än brytpunkter som anges med bp. Fullständig information finns i Olösta brytpunkter (bu Brytpunkter).
Använd kommandot bm (Ange symbol brytpunkt) för att ange nya brytpunkter för symboler som matchar ett angivet mönster. En brytpunktsuppsättning med bm associeras med en adress (till exempel en bp-brytpunkt) om /d-brytaren ingår; det förblir olöst (som en bu-brytpunkt) om denna brytare inte ingår.
Använd kommandot ba (Break on Access) för att ange en processor brytpunkt, även kallat en data brytpunkt. Dessa brytpunkter kan utlösas när minnesplatsen skrivs till, när den läses, när den körs som kod eller när kernel-I/O inträffar. Fullständig information finns i Processorbrytpunkter (ba-brytpunkter).
Använd kommandot bc (Breakpoint Clear) för att permanent ta bort en eller flera brytpunkter.
Använd kommandot bd (Brytpunkt inaktivera) för att tillfälligt inaktivera en eller flera brytpunkter.
Använd kommandot be (Breakpoint Enable) för att återaktivera en eller flera inaktiverade brytpunkter.
Använd kommandot br (Breakpoint Renumber) för att ändra ID:t för en befintlig brytpunkt.
Använd kommandot bs (Update Breakpoint Command) för att ändra kommandot som är associerat med en befintlig brytpunkt.
Använd kommandot bsc (Uppdatera villkorsstyrd brytpunkt) för att ändra villkoret under vilket en befintlig villkorlig brytpunkt inträffar.
I WinDbg finns det flera användargränssnittselement som underlättar kontroll och visning av brytpunkter. Se Ange brytpunkter i WinDbg (klassisk).
Varje brytpunkt har ett decimaltal som kallas det brytpunkts-ID som är associerat med den. Det här numret identifierar brytpunkten i olika kommandon.
Brytpunktskommandon
Du kan inkludera ett kommando i en brytpunkt som körs automatiskt när brytpunkten nås. Följande kommando bryter, till exempel, vid MyFunction+0x47, skriver en dumpfil och återupptar sedan programkörningen.
0:000> bu MyFunction+0x47 ".dump c:\mydump.dmp; g"
Notera Om du styr felsökaren i användarläge från kernelfelsökaren ska du inte använda g (Go) i brytpunktskommandosträngen. Seriegränssnittet kanske inte kan hänga med i det här kommandot och du kommer inte att kunna bryta tillbaka till CDB. För mer information om denna situation, se Kontroll av User-Mode felsökaren från kernelfelsökaren.
Antal brytpunkter
I kernelläge kan du använda högst 32 programvarubrytpunkter. I användarläge kan du använda valfritt antal programvarubrytpunkter.
Antalet processorbrytpunkter som stöds beror på målprocessorarkitekturen.
Villkorsstyrda brytpunkter
Du kan ange en brytpunkt som endast utlöses under vissa villkor. Mer information om den här typen av brytpunkter finns i Ange en villkorsstyrd brytpunkt.
Tvetydiga brytpunkter
I version 10.0.25310.1001 och senare av felsökningsmotorn stöds nu tvetydig brytpunktsupplösning. Tvetydiga brytpunkter gör det möjligt för felsökaren att ange brytpunkter i vissa scenarier där ett brytpunktsuttryck löser sig till flera platser. Mer information finns i lösning på tvetydigt brytpunktproblem.