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


Метод IDebugEventCallbacks::ChangeDebuggeeState (dbgeng.h)

Метод обратного вызова ChangeDebuggeeState вызывается подсистемой при внесении или обнаружении изменений в целевом объекте.

Синтаксис

HRESULT ChangeDebuggeeState(
  [in] ULONG   Flags,
  [in] ULONG64 Argument
);

Параметры

[in] Flags

Указывает тип изменений, внесенных в целевой объект. Флаги могут принимать одно из следующих значений:

Ценность Описание
DEBUG_CDS_ALL Произошло общее изменение целевого объекта. Например, целевой объект выполняется или подсистема только что подключена к целевому объекту.
DEBUG_CDS_REGISTERS Регистры процессора для целевого объекта изменились.
DEBUG_CDS_DATA Пространство данных целевого объекта изменилось.
DEBUG_CDS_REFRESH Сообщите клиентам графического интерфейса для обновления окон отладчика.

[in] Argument

Предоставляет дополнительные сведения об изменении целевого объекта. Интерпретация значения аргумента зависит от значения флагов :

DEBUG_CDS_ALL
Значение аргумента равно нулю.
DEBUG_CDS_REGISTERS
Если один регистр изменился, значение аргумента является индексом этого регистра. В противном случае значение аргумента равно DEBUG_ANY_ID.
DEBUG_CDS_DATA
Значение аргумента указывает, какое пространство данных было изменено. В следующей таблице содержатся возможные значения аргумента.
Ценность Описание
DEBUG_DATA_SPACE_VIRTUAL Виртуальная память целевого объекта изменилась.
DEBUG_DATA_SPACE_PHYSICAL Физическая память целевого объекта изменилась.
DEBUG_DATA_SPACE_CONTROL Память элемента управления целевого объекта изменилась.
DEBUG_DATA_SPACE_IO Порты ввода-вывода целевого объекта получили входные или выходные данные.
DEBUG_DATA_SPACE_MSR Изменены Model-Specific регистры целевого объекта (MSR).
DEBUG_DATA_SPACE_BUS_DATA Память шины целевого объекта изменилась.
 
DEBUG_CDS_REFRESH
В следующей таблице содержатся возможные значения аргумента.
Ценность
DEBUG_CDS_REFRESH_EVALUATE
DEBUG_CDS_REFRESH_EXECUTE
DEBUG_CDS_REFRESH_EXECUTECOMMANDFILE
DEBUG_CDS_REFRESH_ADDBREAKPOINT
DEBUG_CDS_REFRESH_REMOVEBREAKPOINT
DEBUG_CDS_REFRESH_WRITEVIRTUAL
DEBUG_CDS_REFRESH_WRITEVIRTUALUNCACHED
DEBUG_CDS_REFRESH_WRITEPHYSICAL
DEBUG_CDS_REFRESH_WRITEPHYSICAL2
DEBUG_CDS_REFRESH_SETVALUE
DEBUG_CDS_REFRESH_SETVALUE2
DEBUG_CDS_REFRESH_SETSCOPE
DEBUG_CDS_REFRESH_SETSCOPEFRAMEBYINDEX
DEBUG_CDS_REFRESH_SETSCOPEFROMJITDEBUGINFO
DEBUG_CDS_REFRESH_SETSCOPEFROMSTOREDEVENT
DEBUG_CDS_REFRESH_INLINESTEP
DEBUG_CDS_REFRESH_INLINESTEP_PSEUDO
 

Возвращаемое значение

Возвращаемое значение игнорируется подсистемой, если она не указывает на ошибку вызова удаленной процедуры; В этом случае клиент, с которым зарегистрирован этот IDebugEventCallbacks объект, отключен.

Замечания

Подсистема вызывает ChangeDebuggeeState, только если флаг DEBUG_EVENT_CHANGE_DEBUGGEE_STATE установлен в маске, возвращенной IDebugEventCallbacks::GetInterestMask.

Дополнительные сведения об обработке событий см. в событий мониторинга. Сведения об управлении памятью целевого объекта, включая регистры и пробелы данных, см. в доступа к памяти. Сведения о виртуальной и физической памяти целевого объекта см. в виртуальной и физической памяти. Сведения о памяти элемента управления целевого объекта, портах ввода-вывода, MSR и шине см. в других дисковых пространств данных.

Требования

Требование Ценность
целевая платформа Настольный
заголовка dbgeng.h (include Dbgeng.h)