IDebugControl2::OutputStackTrace 方法 (dbgeng.h)

OutputStackTrace 方法會輸出提供的堆疊框架或目前的堆疊框架。

語法

HRESULT OutputStackTrace(
  [in]           ULONG              OutputControl,
  [in, optional] PDEBUG_STACK_FRAME Frames,
  [in]           ULONG              FramesSize,
  [in]           ULONG              Flags
);

參數

[in] OutputControl

指定要傳送輸出的位置。 如需可能的值,請參閱 DEBUG_OUTCTL_XXX

[in, optional] Frames

指定要輸出的堆疊框架陣列。 此陣列中的元素數目是 FramesSize。 如果 FramesNULL,則會使用目前的堆疊框架。

[in] FramesSize

指定要輸出的畫面數。

[in] Flags

指定要為每個畫面輸出哪些資訊的位旗標。 旗標 可以是下表中值的任何組合。

旗標 描述
DEBUG_STACK_ARGUMENTS 在每個呼叫的框架上顯示前三個堆疊記憶體片段。 在堆疊上傳遞參數且框架的程式代碼使用堆疊自變數的平臺上,這些值將是函式的自變數。
DEBUG_STACK_FUNCTION_INFO 顯示對應至框架之函式的相關信息。 這包括呼叫慣例和框架指標省略 (FPO) 資訊。
DEBUG_STACK_SOURCE_LINE 顯示堆疊追蹤每個框架的來源行資訊。
DEBUG_STACK_FRAME_ADDRESSES 顯示每個畫面的傳回位址、先前的框架位址和其他相關位址。
DEBUG_STACK_COLUMN_NAMES 顯示資料行名稱。
DEBUG_STACK_NONVOLATILE_REGISTERS 顯示每個畫面的非變動性緩存器內容。 這隻適用於某些平臺。
DEBUG_STACK_FRAME_NUMBERS 顯示框架編號。
DEBUG_STACK_PARAMETERS 顯示符號資訊中指定的參數名稱和值。
DEBUG_STACK_FRAME_ADDRESSES_RA_ONLY 只顯示堆疊框架位址中的傳回位址。
DEBUG_STACK_FRAME_MEMORY_USAGE 顯示分隔框架的位元元組數目。
DEBUG_STACK_PARAMETERS_NEWLINE 在新行上顯示每個參數及其類型和值。

傳回值

這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值

傳回碼 描述
S_OK
此方法成功。

備註

堆疊框架的陣列可以使用 GetStackTrace 取得。

規格需求

需求
目標平台 桌面
標頭 dbgeng.h (包含 Dbgeng.h)

另請參閱

GetContextStackTrace

GetStackTrace

IDebugControl

IDebugControl2

IDebugControl3

k、kb、kc、kd、kp、kP、kv (顯示堆疊回溯)