IDebugSymbols2::SetScope 方法 (dbgeng.h)
SetScope 方法會設定目前的範圍。
語法
HRESULT SetScope(
[in] ULONG64 InstructionOffset,
[in, optional] PDEBUG_STACK_FRAME ScopeFrame,
[in, optional] PVOID ScopeContext,
[in] ULONG ScopeContextSize
);
參數
[in] InstructionOffset
指定進程虛擬位址空間中範圍目前指令的位置。 只有在 ScopeFrame 和 ScopeContext 都是 NULL 時,才會使用 這個值;否則會忽略它。
[in, optional] ScopeFrame
指定範圍的堆疊框架。 如需此結構的相關信息,請參閱 DEBUG_STACK_FRAME。
[in, optional] ScopeContext
指定範圍的 線程內容。 線程內容的型別是目標有效處理器的CONTEXT結構。 緩衝區 ScopeContext 必須夠大,才能保存這個結構。 如果 ScopeContext 為 NULL,則會改用目前的 緩存器內容 。
[in] ScopeContextSize
指定緩衝區 ScopeContext 的大小。
傳回值
這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值 。
傳回碼 | 描述 |
---|---|
|
InstructionOffset、ScopeFrame 和 ScopeContext 所識別的範圍與舊範圍相同。 |
|
範圍已變更。 |
備註
如果只提供 InstructionOffset ,則可以使用範圍來查閱符號名稱;不過,這些符號的值將無法使用。
若要將範圍設定為先前的狀態,必須提供 ScopeContext 。 例如,如果您只想要存取符號,而不是緩存 器) , 這不一定是必要 (。 若要將範圍設定為目前堆疊上的框架,可以使用 SetScopeFrameByIndex 。
如需範圍的詳細資訊,請參閱 範圍和符號群組。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | dbgeng.h (包含 Dbgeng.h) |