DEBUG_EVENT structure
Describes a debugging event.
Syntax
typedef struct _DEBUG_EVENT { DWORD dwDebugEventCode; DWORD dwProcessId; DWORD dwThreadId; union { EXCEPTION_DEBUG_INFO Exception; CREATE_THREAD_DEBUG_INFO CreateThread; CREATE_PROCESS_DEBUG_INFO CreateProcessInfo; EXIT_THREAD_DEBUG_INFO ExitThread; EXIT_PROCESS_DEBUG_INFO ExitProcess; LOAD_DLL_DEBUG_INFO LoadDll; UNLOAD_DLL_DEBUG_INFO UnloadDll; OUTPUT_DEBUG_STRING_INFO DebugString; RIP_INFO RipInfo; } u; } DEBUG_EVENT, *LPDEBUG_EVENT;
Members
- dwDebugEventCode
-
Type: DWORD
-
The code that identifies the type of debugging event. This member can be one of the following values.
Value Meaning - CREATE_PROCESS_DEBUG_EVENT
- 3
Reports a create-process debugging event. The value of u.CreateProcessInfo specifies a CREATE_PROCESS_DEBUG_INFO structure.
- CREATE_THREAD_DEBUG_EVENT
- 2
Reports a create-thread debugging event. The value of u.CreateThread specifies a CREATE_THREAD_DEBUG_INFO structure.
- EXCEPTION_DEBUG_EVENT
- 1
Reports an exception debugging event. The value of u.Exception specifies an EXCEPTION_DEBUG_INFO structure.
- EXIT_PROCESS_DEBUG_EVENT
- 5
Reports an exit-process debugging event. The value of u.ExitProcess specifies an EXIT_PROCESS_DEBUG_INFO structure.
- EXIT_THREAD_DEBUG_EVENT
- 4
Reports an exit-thread debugging event. The value of u.ExitThread specifies an EXIT_THREAD_DEBUG_INFO structure.
- LOAD_DLL_DEBUG_EVENT
- 6
Reports a load-dynamic-link-library (DLL) debugging event. The value of u.LoadDll specifies a LOAD_DLL_DEBUG_INFO structure.
- OUTPUT_DEBUG_STRING_EVENT
- 8
Reports an output-debugging-string debugging event. The value of u.DebugString specifies an OUTPUT_DEBUG_STRING_INFO structure.
- RIP_EVENT
- 9
Reports a RIP-debugging event (system debugging error). The value of u.RipInfo specifies a RIP_INFO structure.
- UNLOAD_DLL_DEBUG_EVENT
- 7
Reports an unload-DLL debugging event. The value of u.UnloadDll specifies an UNLOAD_DLL_DEBUG_INFO structure.
- dwProcessId
-
Type: DWORD
-
The identifier of the process in which the debugging event occurred. A debugger uses this value to locate the debugger's per-process structure. These values are not necessarily small integers that can be used as table indices.
- dwThreadId
-
Type: DWORD
-
The identifier of the thread in which the debugging event occurred. A debugger uses this value to locate the debugger's per-thread structure. These values are not necessarily small integers that can be used as table indices.
- u
-
Any additional information relating to the debugging event. This union takes on the type and value appropriate to the type of debugging event, as described in the dwDebugEventCode member.
- Exception
Type: EXCEPTION_DEBUG_INFO
-
If the dwDebugEventCode is EXCEPTION_DEBUG_EVENT (1), u.Exception specifies an EXCEPTION_DEBUG_INFO structure.
- CreateThread
Type: CREATE_THREAD_DEBUG_INFO
-
If the dwDebugEventCode is CREATE_THREAD_DEBUG_EVENT (2), u.CreateThread specifies an CREATE_THREAD_DEBUG_INFO structure.
- CreateProcessInfo
-
If the dwDebugEventCode is CREATE_PROCESS_DEBUG_EVENT (3), u.CreateProcessInfo specifies an CREATE_PROCESS_DEBUG_INFO structure.
- ExitThread
Type: EXIT_THREAD_DEBUG_INFO
-
If the dwDebugEventCode is EXIT_THREAD_DEBUG_EVENT (4), u.ExitThread specifies an EXIT_THREAD_DEBUG_INFO structure.
- ExitProcess
Type: EXIT_PROCESS_DEBUG_INFO
-
If the dwDebugEventCode is EXIT_PROCESS_DEBUG_EVENT (5), u.ExitProcess specifies an EXIT_PROCESS_DEBUG_INFO structure.
- LoadDll
Type: LOAD_DLL_DEBUG_INFO
-
If the dwDebugEventCode is LOAD_DLL_DEBUG_EVENT (6), u.LoadDll specifies an LOAD_DLL_DEBUG_INFO structure.
- UnloadDll
Type: UNLOAD_DLL_DEBUG_INFO
-
If the dwDebugEventCode is UNLOAD_DLL_DEBUG_EVENT (7), u.UnloadDll specifies an UNLOAD_DLL_DEBUG_INFO structure.
- DebugString
Type: OUTPUT_DEBUG_STRING_INFO
-
If the dwDebugEventCode is OUTPUT_DEBUG_STRING_EVENT (8), u.DebugString specifies an OUTPUT_DEBUG_STRING_INFO structure.
- RipInfo
Type: RIP_INFO
-
If the dwDebugEventCode is RIP_EVENT (9), u.RipInfo specifies an RIP_INFO structure.
Remarks
If the WaitForDebugEvent function succeeds, it fills in the members of a DEBUG_EVENT structure.
Requirements
|
Minimum supported client |
Windows XP [desktop apps only] |
|---|---|
|
Minimum supported server |
Windows Server 2003 [desktop apps only] |
|
Header |
|
See also
- CREATE_PROCESS_DEBUG_INFO
- CREATE_THREAD_DEBUG_INFO
- EXIT_PROCESS_DEBUG_INFO
- EXIT_THREAD_DEBUG_INFO
- EXCEPTION_DEBUG_INFO
- LOAD_DLL_DEBUG_INFO
- OUTPUT_DEBUG_STRING_INFO
- UNLOAD_DLL_DEBUG_INFO
- WaitForDebugEvent