Метод 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 (включая Dbgeng.h) |