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


Как определить, откуда передается неправильное значение параметра?

Обновлен: Ноябрь 2007

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

Выпуск

Visual Basic

C#

C++

Web Developer

Экспресс-выпуск

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

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

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

Standard

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

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

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

Pro и Team

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

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

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

Обозначения:

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

Применяется

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

Неприменимо

Тема применяется, но команда по умолчанию сокрыта

Команда или команды скрытые по умолчанию.

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

Одной из функций передается неправильное значение параметра. Эта функция вызывается по всей программе. Как определить, откуда передается неправильное значение?

Решение

Устранение неполадки

  1. Установите точку останова в начале функции.

  2. Щелкните правой кнопкой мыши точку останова и выберите пункт Условие.

  3. В диалоговом окне Условие для точек останова установите флажок Условие. Дополнительные сведения см. в разделе Практическое руководство. Установка условия точки останова.

  4. Введите в текстовое поле выражение, например Var==3, где Var представляет собой имя параметра, который содержит неправильное значение, а 3 — это неправильное значение, переданное параметру.

  5. Установите переключатель в положение верно и нажмите кнопку ОК.

  6. Запустите программу повторно. Точка останова заставит программу прервать выполнение на начале функции, когда параметр Var получит значение 3.

  7. Затем в окне "Стек вызовов" можно найти вызывающую функцию, чтобы перейти к ее исходному коду. Дополнительные сведения см. в разделе Практическое руководство. Использование окна стека вызова.

См. также

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

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

Точки останова и точки отслеживания

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

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