#ifndef _NTDBG_H
/**
* The DBG_STATE enumeration identifies the debug state change reported in DBGUI_WAIT_STATE_CHANGE.
* \remarks NewState selects the active member of DBGUI_WAIT_STATE_CHANGE.StateInfo.
* Exception, breakpoint, and single-step state changes all use StateInfo.Exception.
*/
typedef enum _DBG_STATE
{
DbgIdle, // No debug events
DbgReplyPending, // Reply-pending state
DbgCreateThreadStateChange, // StateInfo.CreateThread
DbgCreateProcessStateChange, // StateInfo.CreateProcessInfo
DbgExitThreadStateChange, // StateInfo.ExitThread
DbgExitProcessStateChange, // StateInfo.ExitProcess
DbgExceptionStateChange, // StateInfo.Exception
DbgBreakpointStateChange, // StateInfo.Exception; ExceptionCode == STATUS_BREAKPOINT
DbgSingleStepStateChange, // StateInfo.Exception; ExceptionCode == STATUS_SINGLE_STEP
DbgLoadDllStateChange, // StateInfo.LoadDll
DbgUnloadDllStateChange // StateInfo.UnloadDll
} DBG_STATE, *PDBG_STATE;
View code on GitHubNo description available.
DBG_STATE enumeration is used by Debug Objects as a member of DBGUI_WAIT_STATE_CHANGE structure returned in successful call to NtWaitForDebugEvent function. It describes current state of Debug Object. Possible values are:
DBGUI_WAIT_STATE_CHANGENtWaitForDebugObject