共用方式為


DEBUG_EVENT結構(minwinbase.h)

描述除錯事件。

語法

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

類型: DWORD

識別除錯事件類型的程式碼。 這個成員可以是以下其中一個值。

價值觀 Meaning
CREATE_PROCESS_DEBUG_EVENT
3
報告建立程序除錯事件(包含程序及其主執行緒)。 u.CreateProcessInfo 的值指定了一個CREATE_PROCESS_DEBUG_INFO結構。
CREATE_THREAD_DEBUG_EVENT
2
回報建立執行緒除錯事件(不包含程序的主執行緒,詳見「CREATE_PROCESS_DEBUG_EVENT」)。 u.CreateThread 的值指定了一個CREATE_THREAD_DEBUG_INFO結構。
EXCEPTION_DEBUG_EVENT
1
回報一個例外除錯事件。 u.Exception 的值指定了EXCEPTION_DEBUG_INFO結構。
EXIT_PROCESS_DEBUG_EVENT
5
回報一個退出程序除錯事件。 u.ExitProcess 的價值指定了一個EXIT_PROCESS_DEBUG_INFO結構。
EXIT_THREAD_DEBUG_EVENT
4
回報一個退出執行緒除錯事件。 u.ExitThread 的值指定了一個EXIT_THREAD_DEBUG_INFO結構。
LOAD_DLL_DEBUG_EVENT
6
回報載入動態連結函式庫(DLL)除錯事件。 u.LoadDll 的值指定了一個LOAD_DLL_DEBUG_INFO結構。
OUTPUT_DEBUG_STRING_EVENT
8
回報輸出除錯字串除錯事件。 u.DebugString 的值指定了一個OUTPUT_DEBUG_STRING_INFO結構。
RIP_EVENT
9
報告 RIP-debugg 事件(系統除錯錯誤)。 u.RipInfo 的價值規定了RIP_INFO結構。
UNLOAD_DLL_DEBUG_EVENT
7
回報卸載 DLL 除錯事件。 u.UnloadDll 的值指定了一個UNLOAD_DLL_DEBUG_INFO結構。

dwProcessId

類型: DWORD

除錯事件發生的程序識別碼。 除錯器利用此值定位除錯器的每個程序結構。 這些值不一定是可用作表格索引的小整數。

dwThreadId

類型: DWORD

除錯事件發生的執行緒識別碼。 除錯器利用此值定位除錯器的每執行緒結構。 這些值不一定是可用作表格索引的小整數。

u

任何與除錯事件相關的額外資訊。 此聯集採用與除錯事件類型相符的型別與值,如 dwDebugEventCode 成員所述。

u.Exception

類型: EXCEPTION_DEBUG_INFO

dwDebugEventCodeEXCEPTION_DEBUG_EVENT (1), u.Exception 指定一個 EXCEPTION_DEBUG_INFO 結構。

u.CreateThread

類型: CREATE_THREAD_DEBUG_INFO

dwDebugEventCodeCREATE_THREAD_DEBUG_EVENT (2), u.CreateThread 會指定一個 CREATE_THREAD_DEBUG_INFO 結構。

u.CreateProcessInfo

類型: CREATE_PROCESS_DEBUG_INFO

dwDebugEventCodeCREATE_PROCESS_DEBUG_EVENT (3), u.CreateProcessInfo 會指定一個 CREATE_PROCESS_DEBUG_INFO 結構。

u.ExitThread

類型: EXIT_THREAD_DEBUG_INFO

dwDebugEventCodeEXIT_THREAD_DEBUG_EVENT (4), u.ExitThread 會指定一個 EXIT_THREAD_DEBUG_INFO 結構。

u.ExitProcess

類型: EXIT_PROCESS_DEBUG_INFO

dwDebugEventCodeEXIT_PROCESS_DEBUG_EVENT (5), u.ExitProcess 會指定一個 EXIT_PROCESS_DEBUG_INFO 結構。

u.LoadDll

類型: LOAD_DLL_DEBUG_INFO

dwDebugEventCodeLOAD_DLL_DEBUG_EVENT (6), u.LoadDll 會指定一個 LOAD_DLL_DEBUG_INFO 結構。

u.UnloadDll

類型: UNLOAD_DLL_DEBUG_INFO

dwDebugEventCodeUNLOAD_DLL_DEBUG_EVENT (7), u.UnloadDll 指定一個 UNLOAD_DLL_DEBUG_INFO 結構。

u.DebugString

類型: OUTPUT_DEBUG_STRING_INFO

dwDebugEventCodeOUTPUT_DEBUG_STRING_EVENT (8), u.DebugString 指定一個 OUTPUT_DEBUG_STRING_INFO 結構。

u.RipInfo

類型: RIP_INFO

dwDebugEventCodeRIP_EVENT (9), u.RipInfo 會指定一個 RIP_INFO 結構。

備註

如果 WaitForDebugEvent 函式成功,它會填補 一個 DEBUG_EVENT 結構的成員。

需求

Requirement 價值觀
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
Header minwinbase.h(包含 Windows.h)

另請參閱

CREATE_PROCESS_DEBUG_INFO

CREATE_THREAD_DEBUG_INFO

EXCEPTION_DEBUG_INFO

EXIT_PROCESS_DEBUG_INFO

EXIT_THREAD_DEBUG_INFO

LOAD_DLL_DEBUG_INFO

OUTPUT_DEBUG_STRING_INFO

UNLOAD_DLL_DEBUG_INFO

等待除錯事件