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


Написание функций отладочных ловушек

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

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

Выпуск

Visual Basic

C#

C++

Web Developer

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

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

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

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

Standard

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

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

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

Pro и Team

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

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

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

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

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

Применяется

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

Неприменимо

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

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

В этом разделе дается краткое описание нескольких функций отладочных ловушек, которые можно написать самостоятельно. Эти функции позволяют разместить пользовательский код в заранее определенных местах в контексте стандартной процедуры отладки.

В этом подразделе

  • Функции-ловушки клиентского блока
    В разделе приводится руководство по написанию функций и заготовки функций, проверяющих или выводящих содержимое, которое хранится в блоках типа _CLIENT_BLOCK.

  • Функции-ловушки выделения
    В разделе приведено определение функции-ловушки выделения, описываются способы их использования, ограничения, а также примеры заготовок.

  • Ловушки выделения и выделения памяти CRT
    В разделе рассказывается об ограничениях, связанных с функциями-ловушками выделения, которые явно пропускают блоки _CRT_BLOCK при вызове функций библиотеки CRT, выделяющих внутреннюю память. Также в разделе описываются последствия, которые могут возникнуть, если ловушка приложения обработает блоки _CRT_BLOCK (с примерами), и способы изменения стандартной функции-ловушки выделения CrtDefaultAllocHook.

  • Отчетные функции-ловушки
    Раздел посвящен функции _CrtSetReportHook, которая позволяет фильтровать отчеты, чтобы отобрать выделения конкретного типа. В этом разделе также приведена ее заготовка.

Связанные подразделы

  • Методы отладки CRT
    Раздел содержит сведения о методах отладки библиотеки времени выполнения языка C, к которым относятся: использование библиотеки отладки CRT, макрос для отчета, различия между функциями malloc и _malloc_dbg, написание отладочных функций-ловушек, а также отладочная куча CRT.