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


структура KDHELP64 (dbghelp.h)

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

Синтаксис

typedef struct _KDHELP64 {
  DWORD64 Thread;
  DWORD   ThCallbackStack;
  DWORD   ThCallbackBStore;
  DWORD   NextCallback;
  DWORD   FramePointer;
  DWORD64 KiCallUserMode;
  DWORD64 KeUserCallbackDispatcher;
  DWORD64 SystemRangeStart;
  DWORD64 KiUserExceptionDispatcher;
  DWORD64 StackBase;
  DWORD64 StackLimit;
  DWORD   BuildVersion;
  DWORD   RetpolineStubFunctionTableSize;
  DWORD64 RetpolineStubFunctionTable;
  DWORD   RetpolineStubOffset;
  DWORD   RetpolineStubSize;
  DWORD64 Reserved0[2];
} KDHELP64, *PKDHELP64;

Члены

Thread

Адрес объекта потока ядра, указанный в пакете WAIT_STATE_CHANGE.

ThCallbackStack

Смещение в объекте потока к указателю на текущий кадр обратного вызова в стеке ядра.

ThCallbackBStore

Intel Itanium: Смещение в объекте потока до указателя на текущий кадр резервного хранилища обратного вызова в стеке ядра.

NextCallback

Адрес следующего кадра обратного вызова.

FramePointer

Адрес указателя сохраненного кадра, если применимо.

KiCallUserMode

Адрес функции ядра, которая вызывает в пользовательском режиме.

KeUserCallbackDispatcher

Адрес функции диспетчера пользовательского режима.

SystemRangeStart

Самый низкий адрес в режиме ядра.

KiUserExceptionDispatcher

Адрес функции диспетчера исключений в пользовательском режиме.

DbgHelp 6.1 и более ранних версий: Этот элемент не поддерживается.

StackBase

Адрес базы стека.

StackLimit

Предел стека.

BuildVersion

TBD

RetpolineStubFunctionTableSize

TBD

RetpolineStubFunctionTable

TBD

RetpolineStubOffset

TBD

RetpolineStubSize

TBD

Reserved0[2]

Этот элемент зарезервирован для использования операционной системой.

Комментарии

Эта структура заменяет структуру KDHELP . Дополнительные сведения см. в разделе Обновленная поддержка платформы. KDHELP определяется в Dbghelp.h следующим образом.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define KDHELP KDHELP64
#define PKDHELP PKDHELP64
#else
typedef struct _KDHELP {
    DWORD   Thread;
    DWORD   ThCallbackStack;
    DWORD   NextCallback;
    DWORD   FramePointer;
    DWORD   KiCallUserMode;
    DWORD   KeUserCallbackDispatcher;
    DWORD   SystemRangeStart;
    DWORD   ThCallbackBStore;
    DWORD   KiUserExceptionDispatcher;
    DWORD   StackBase;
    DWORD   StackLimit;
    DWORD   Reserved[5];
} KDHELP, *PKDHELP;
#endif

Требования

Требование Значение
Заголовок dbghelp.h
Распространяемые компоненты DbgHelp.dll 5.1 или более поздней версии

См. также раздел

STACKFRAME64