デバッグ セッションにアクセスできる場合は常に、 最後のイベントがあります。 これは、セッションがアクセス可能になる原因となったイベントです。 イベント ターゲットは、最後のイベントを生成したターゲットです。 セッションにアクセスできるようになると、現在のターゲットがイベント ターゲットに設定されます。 最後のイベントの詳細は 、GetLastEventInformation によって返されます。 最後のイベントの命令ポインターと、イベントが発生したときの命令ポインターのメモリは、 要求 操作 DEBUG_REQUEST_GET_CAPTURED_EVENT_CODE_OFFSET および DEBUG_REQUEST_READ_CAPTURED_EVENT_CODE_STREAMによって返されます。
ターゲットがクラッシュ ダンプ ファイルの場合、最後の イベント はダンプ ファイルが作成される前に発生した最後のイベントです。 このイベントはダンプ ファイルに格納され、ダンプ ファイルがデバッグ ターゲットとして取得されるときに、エンジンによってイベント コールバック用に生成されます。
ターゲットがカーネル モードのターゲットであり、 バグ チェック が発生した場合は、 ReadBugCheckData を使用してバグ チェック コードと関連パラメーターを見つけることができます。
ターゲットがユーザー モードのミニダンプの場合、ダンプ ファイル ジェネレーターは追加のイベントを格納する可能性があります。 通常、これは、ジェネレーターがダンプ ファイルを保存することを誘発したイベントです。 このイベントの詳細は 、GetStoredEventInformation および 要求 操作 DEBUG_REQUEST_TARGET_EXCEPTION_CONTEXT、 DEBUG_REQUEST_TARGET_EXCEPTION_THREAD、および DEBUG_REQUEST_TARGET_EXCEPTION_RECORDによって返されます。
ダンプ ファイルには、イベントの静的リストが含まれている場合があります。 各イベントは、特定の時点におけるターゲットのスナップショットを表します。 このリスト内のイベントの数は 、GetNumberEvents によって返されます。 リスト内の各イベントの説明については、 GetEventIndexDescription を使用します。 このリストのイベントを現在のイベントとして設定するには、 SetNextEventIndex メソッドを使用します。 WaitForEvent を呼び出した後、イベントは現在のイベントになります。 リスト内のどのイベントが現在のイベントであるかを判断するには、 GetCurrentEventIndex を使用します。