次の方法で共有


ICorDebugStackWalk::SetContext メソッド

ICorDebugStackWalk オブジェクトの現在のコンテキストをスレッドの有効なコンテキストに設定します。

構文

HRESULT SetContext([in] CorDebugSetContextFlag flag,
                   [in] ULONG32 contextSize,
                   [in, size_is(contextSize)] BYTE context[]);

パラメーター

flag [in] CorDebugSetContextFlag コンテキストがスタック上のアクティブ フレームからのものであるか、スタックをアンワインドして取得したコンテキストであるかを示すフラグです。

contextSize [in] CONTEXT バッファーの割り当てられたサイズ。

context [in] CONTEXT バッファー。

戻り値

このメソッドは、次の特定の HRESULT と、メソッドの失敗を示す HRESULT エラーも返します。

HRESULT 説明
S_OK ICorDebugStackWalk オブジェクトのコンテキストは正常に設定されました。
E_FAIL ICorDebugStackWalk オブジェクトのコンテキストは設定されませんでした。
E_INVALIDARG コンテキストが null です。
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) 出力バッファーが小さすぎます。

例外

解説

このメソッドは、スレッドの現在のコンテキストを変更しません。

現在のコンテキストを無効なコンテキストに設定すると、スタック ウォーカーから予期しない結果が生じる可能性があります。

すぐに ICorDebugStackWalk::GetContext メソッドを呼び出すことで、このコンテキストの完全なビットごとのコピーを取得できます。

必要条件

:システム要件」を参照してください。

ヘッダー: CorDebug.idl、CorDebug.h

ライブラリ: CorGuids.lib

.NET Framework のバージョン: 4 以降で使用可能

関連項目