Debuggen eines Anwendungsfehlers
Es gibt eine Vielzahl von Fehlern in Benutzermodusanwendungen.
Zu den häufigsten Arten von Fehlern gehören Zugriffsverletzungen, Ausrichtungsfehler, Ausnahmen, kritische Abschnittstimeouts (Deadlocks) und E/A-Fehler auf Seiten.
Zugriffsverletzungen und Datentypfehler gehören zu den häufigsten. Sie treten in der Regel auf, wenn ein ungültiger Zeiger abgeleitet wird. Die Blame kann bei der Funktion liegen, die den Fehler verursacht hat, oder bei einer früheren Funktion, die einen ungültigen Parameter an die fehlerhafte Funktion übergeben hat.
Benutzermodusausnahmen haben viele mögliche Ursachen. Wenn eine unbekannte Ausnahme auftritt, suchen Sie sie nach Möglichkeit in ntstatus.h oder winerror.h.
Timeouts für kritische Abschnitte (oder mögliche Deadlocks) treten auf, wenn ein Thread lange auf einen kritischen Abschnitt wartet. Diese sind schwer zu debuggen und erfordern eine eingehende Analyse der Stapelüberwachung.
Bei Seiten-E/A-Fehlern handelt es sich fast immer um Hardwarefehler. Sie können den status Code in ntstatus.h überprüfen, um dies zu überprüfen.
Siehe auch
Anzeigen eines kritischen Abschnitts
Timeouts für kritische Abschnitte (Benutzermodus)