次の方法で共有


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
load-dynamic-link-library (DLL) デバッグ イベントを報告します。 u.LoadDll の値は、LOAD_DLL_DEBUG_INFO構造体を指定します。
OUTPUT_DEBUG_STRING_EVENT
output-debugging-string デバッグ イベントを報告します。 u.DebugString の値は、OUTPUT_DEBUG_STRING_INFO構造体を指定します。
RIP_EVENT
9
RIP デバッグ イベント (システム デバッグ エラー) を報告します。 u.RipInfo の値は、RIP_INFO構造体を指定します。
UNLOAD_DLL_DEBUG_EVENT
7
unload-DLL デバッグ イベントを報告します。 u.UnloadDll の値は、UNLOAD_DLL_DEBUG_INFO構造体を指定します。

dwProcessId

型: DWORD

デバッグ イベントが発生したプロセスの識別子。 デバッガーはこの値を使用して、デバッガーのプロセスごとの構造を見つけます。 これらの値は、テーブル インデックスとして使用できる小さな整数であるとは限りません。

dwThreadId

型: DWORD

デバッグ イベントが発生したスレッドの識別子。 デバッガーはこの値を使用して、デバッガーのスレッドごとの構造を見つけます。 これらの値は、テーブル インデックスとして使用できる小さな整数であるとは限りません。

u

デバッグ イベントに関連する追加情報。 この共用体は、 dwDebugEventCode メンバーで説明されているように、デバッグ イベントの種類に適した型と値を受け取ります。

u.Exception

型: EXCEPTION_DEBUG_INFO

dwDebugEventCodeEXCEPTION_DEBUG_EVENT (1) の場合、u.ExceptionEXCEPTION_DEBUG_INFO構造体を指定します。

u.CreateThread

型: CREATE_THREAD_DEBUG_INFO

dwDebugEventCodeCREATE_THREAD_DEBUG_EVENT (2) の場合、u.CreateThreadCREATE_THREAD_DEBUG_INFO構造体を指定します。

u.CreateProcessInfo

型: CREATE_PROCESS_DEBUG_INFO

dwDebugEventCodeCREATE_PROCESS_DEBUG_EVENT (3) の場合、u.CreateProcessInfoCREATE_PROCESS_DEBUG_INFO構造体を指定します。

u.ExitThread

型: EXIT_THREAD_DEBUG_INFO

dwDebugEventCodeEXIT_THREAD_DEBUG_EVENT (4) の場合、u.ExitThreadEXIT_THREAD_DEBUG_INFO構造体を指定します。

u.ExitProcess

型: EXIT_PROCESS_DEBUG_INFO

dwDebugEventCodeEXIT_PROCESS_DEBUG_EVENT (5) の場合、u.ExitProcessEXIT_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.DebugStringOUTPUT_DEBUG_STRING_INFO構造体を指定します。

u.RipInfo

型: RIP_INFO

dwDebugEventCodeRIP_EVENT (9) の場合、u.RipInfoRIP_INFO構造体を指定します。

注釈

WaitForDebugEvent 関数が成功すると、DEBUG_EVENT構造体のメンバーが格納されます。

Requirements

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

WaitForDebugEvent