次の方法で共有


IDebugControl::GetStackTrace メソッド (dbgeng.h)

GetStackTrace メソッドは、指定された呼び出し履歴の先頭にあるフレームを返します。

構文

HRESULT GetStackTrace(
  [in]            ULONG64            FrameOffset,
  [in]            ULONG64            StackOffset,
  [in]            ULONG64            InstructionOffset,
  [out, writes]   PDEBUG_STACK_FRAME Frames,
  [in]            ULONG              FramesSize,
  [out, optional] PULONG             FramesFilled
);

パラメーター

[in] FrameOffset

スタックの上部にあるスタック フレームの位置を指定します。 FrameOffset が 0 に設定されている場合は、代わりに現在のフレーム ポインターが使用されます。

[in] StackOffset

現在のスタックの場所を指定します。 StackOffset が 0 に設定されている場合は、代わりに現在のスタック ポインターが使用されます。

[in] InstructionOffset

スタックの上部にあるスタック フレームによって表される関数の目的の命令の場所を指定します。 InstructionOffset が 0 に設定されている場合は、代わりに現在の命令が使用されます。

[out, writes] Frames

スタック フレームを受信します。 この配列が保持する要素の数は FrameSize です

[in] FramesSize

Frames 配列内の項目の数を指定します。

[out, optional] FramesFilled

配列 Frames に配置されたフレームの数を受け取ります。 FramesFilledNULL の場合、この情報は返されません。

戻り値

このメソッドは、他のエラー値を返す場合もあります。 詳細については、「 戻り値 」を参照してください。

リターン コード 説明
S_OK
メソッドは正常に実行されました。
E_FAIL
スタック フレームが返されませんでした。

注釈

Frames に返されるスタック トレースは、OutputStackTrace を使用して出力できます。

要件

要件
対象プラットフォーム デスクトップ
Header dbgeng.h (Dbgeng.h を含む)

こちらもご覧ください

GetContextStackTrace

GetFrameOffset2

GetInstructionOffset2

GetStackOffset2

IDebugControl

IDebugControl2

IDebugControl3

OutputStackTrace

StackTrace

k、kb、kc、kd、kp、kP、kv (スタック バックトレースの表示)