Поделиться через


Как отладить нарушение доступа?

Этот раздел применим к:

Выпуск

Visual Basic

C#

F#

C++

Web Developer

Express

Тема не применяется Тема не применяется Тема не применяется

Только машинные коды

Тема не применяется

Pro, Premium и Ultimate

Тема не применяется Тема не применяется Тема не применяется

Только машинные коды

Тема не применяется

Описание проблемы

Программа порождает нарушение доступа. Как это отладить?

Решение

Используйте окно Стек вызовов, чтобы просмотреть стек вызовов и найти поврежденные данные, передаваемые функции в качестве параметра. Если это не помогло, попытайтесь задать точку останова перед тем местом, где возникло нарушение доступа. Проверьте, корректны ли данные в этой точке. Если это так, попытайтесь пройти это место пошагово. Если можно определить конкретное действие (например, команда меню), приведшее к нарушению доступа, можно попробовать другой способ: установите точку останова между этим действием (в этом примере командой меню) и собственно нарушением доступа. Затем можно посмотреть на состояние программы в момент возникновения нарушения доступа.

Эти способы можно использовать в сочетании или чередовать их, пока место, где возникло нарушение доступа, не будет точно определено. Дополнительные сведения см. в разделе Использование окна "Стек вызовов".

См. также

Основные понятия

Вопросы и ответы по отладке машинного кода

Другие ресурсы

Отладка машинного кода