Share via


Problembehandlung bei Ausnahmen: System.AccessViolationException

Eine AccessViolationException-Ausnahme wird ausgelöst, wenn versucht wird, von geschütztem Arbeitsspeicher zu lesen oder darauf zu schreiben.

Tipps

  • Stellen Sie sicher, dass der Arbeitsspeicher, auf den Sie zugreifen möchten, belegt wurde.
    Bei der automatischen Speicherverwaltung handelt es sich um einen Dienst, der von der Common Language Runtime zur Verfügung gestellt wird. Es kann für Sie vorteilhaft sein, zur Nutzung dieses Dienstes auf verwalteten Code umzustellen. Weitere Informationen finden Sie unter Automatische Speicherverwaltung.

  • Stellen Sie sicher, dass der Arbeitsspeicher, auf den Sie zugreifen möchten, nicht beschädigt worden ist.
    Wenn aufgrund ungültiger Zeiger mehrere Lese- und Schreibvorgänge erfolgt sind, kann das möglicherweise zu einer Beschädigung des Arbeitsspeichers führen.

Hinweise

Eine Zugriffsverletzung tritt auf, wenn nicht verwalteter bzw. unsicherer Code versucht auf Arbeitsspeicher zuzugreifen, der nicht belegt ist, oder zu dem keine Zugangsberechtigung besteht. Nicht alle Lese- und Schreibvorgänge, die aufgrund ungültiger Zeiger aufgetreten sind, führen zu Zugriffsverletzungen. Eine Zugriffsverletzung gibt somit an, dass mehrere Lese- und Schreibvorgänge aufgrund ungültiger Zeiger aufgetreten sind und dass der Arbeitsspeicher u. U. beschädigt sein kann.

In verwaltetem Code sind alle Verweise entweder gültig oder NULL. Wenn eine Operation versucht, in überprüfbarem Code einen NULL-Verweis herzustellen, wird eine NullReferenceException ausgelöst.

Eine Zugriffsverletzung, die in unsicherem verwalteten Code auftritt, kann je nach Plattform entweder als NullReferenceException oder als AccessViolationException ausgedrückt werden.

Zugriffverletzungen in nicht verwaltetem Code, die an verwalteten Code übergeben werden, sind immer mit einer AccessViolationException umschlossen.

Siehe auch

Aufgaben

Gewusst wie: Verwenden des Ausnahmen-Assistenten

Konzepte

Memory Management: Examples

Automatische Speicherverwaltung