次の方法で共有


ICorDebugProcess::SetThreadContext メソッド

更新 : 2007 年 11 月

このプロセス内の特定のスレッドのコンテキストを設定します。

HRESULT SetThreadContext(
    [in] DWORD threadID,
    [in] ULONG32 contextSize,
    [in, length_is(contextSize), size_is(contextSize)]
    BYTE context[]);

パラメータ

  • threadID
    [入力] コンテキストを設定するスレッドの ID。

  • contextSize
    [入力] context 配列のサイズ。

  • context
    [入力] スレッドのコンテキストを記述するバイトの配列。

    コンテキストは、スレッドが実行しているプロセッサのアーキテクチャを指定します。

解説

デバッガは、Win32 SetThreadContext 関数ではなくこのメソッドを呼び出す必要があります。これは、スレッドが実際には "ハイジャック" 状態 (スレッドのコンテキストが一時的に変更された状態) の可能性があるためです。このメソッドは、スレッドがネイティブ コード内にある場合のみ使用します。マネージ コード内のスレッドには、ICorDebugRegisterSet を使用します。帯域外 (OOB: Out-Of-Band) デバッグ イベント中は、スレッドのコンテキストを変更する必要はありません。

渡されるデータは、現在のプラットフォームのコンテキスト構造体である必要があります。

このメソッドは、不適切に使用するとランタイムを破損することがあります。

必要条件

プラットフォーム : 「.NET Framework システム要件」を参照

ヘッダー : CorDebug.idl

ライブラリ : CorGuids.lib

.NET Framework のバージョン : 3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

参照

参照

ICorDebugProcess

ICorDebugProcess2