次の方法で共有


IDebugControl5::GetStackTraceEx メソッド (dbgeng.h)

GetStackTraceEx メソッドは、指定された呼び出し履歴の先頭にあるフレームを返します。 GetStackTraceEx メソッドは、インライン フレームのサポートを提供します。 インライン関数の操作の詳細については、「 最適化されたコードとインライン関数のデバッグ」を参照してください。

構文

HRESULT GetStackTraceEx(
  [in]            ULONG64               FrameOffset,
  [in]            ULONG64               StackOffset,
  [in]            ULONG64               InstructionOffset,
  [out, writes]   PDEBUG_STACK_FRAME_EX 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 に返されるスタック トレースは、 OutputStackTraceEx を使用して出力できます。

要件

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

こちらもご覧ください

GetContextStackTraceEx

GetFrameOffset2

GetInstructionOffset2

GetStackOffset2

IDebugControl5

OutputStackTraceEx

StackTrace

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