次の方法で共有


ICorDebugEval インターフェイス

デバッグ中のコードのコンテキスト内でデバッガーがコードを実行できるようにするメソッドを提供します。

Methods

メソッド Description
Abort メソッド この ICorDebugEval オブジェクトが現在実行している計算を中止します。
CallFunction メソッド 指定した関数の呼び出しを設定します。 (現在は使用されていません。代わりに ICorDebugEval2::CallParameterizedFunction を使用してください)。)
CreateValue メソッド 初期値が 0 または null の、指定した型の "ICorDebugValue" オブジェクトへのインターフェイス ポインターを取得します。 (現在は使用されていません。代わりに ICorDebugEval2::CreateValueForType を使用してください)。)
GetResult メソッド 評価の結果を含む ICorDebugValue へのインターフェイス ポインターを取得します。
GetThread メソッド この評価が実行されている 、または実行される "ICorDebugThread" へのインターフェイス ポインターを取得します。
IsActive メソッド この ICorDebugEval オブジェクトが現在実行中かどうかを示す値を取得します。
NewArray メソッド 指定した要素型と次元の新しい配列を割り当てます。 (現在は使用されていません。代わりに ICorDebugEval2::NewParameterizedArray を 使用してください)。)
NewObject メソッド 新しいオブジェクト インスタンスを割り当て、指定したコンストラクター メソッドを呼び出します。 (現在は使用されていません。代わりに ICorDebugEval2::NewParameterizedObject を使用してください)。)
NewObjectNoConstructor メソッド コンストラクター メソッドを呼び出さずに、指定した型の新しいオブジェクト インスタンスを割り当てます。 (現在は使用されていません。代わりに ICorDebugEval2::NewParameterizedObjectNoConstructor を使用してください)。)
NewString メソッド 指定した内容を持つ新しい文字列オブジェクトを割り当てます。

注釈

ICorDebugEval オブジェクトは、評価の実行に使用される特定のスレッドのコンテキストで作成されます。 特定の評価で使用されるすべてのオブジェクトと型は、同じアプリケーション ドメイン内に存在する必要があります。 そのアプリケーション ドメインは、スレッドの現在のアプリケーション ドメインと同じである必要はありません。 評価は入れ子にすることができます。

評価の操作は、デバッガーが ICorDebugController::Continue を呼び出し、 ICorDebugManagedCallback::EvalComplete コールバックを受け取るまで完了しません。 他のスレッドの実行を許可せずに評価機能を使用する必要がある場合は、 ICorDebugController::SetAllThreadsDebugState または ICorDebugController::Stop を使用してスレッドを中断してから 、ICorDebugController::Continue を呼び出します。

評価の進行中はユーザー コードが実行されるため、クラスの読み込みやブレークポイントなど、デバッグ イベントが発生する可能性があります。 デバッガーは、通常どおり、これらのイベントのコールバックを受け取ります。 評価の状態は、通常のプログラム状態の検査の一部と見なされます。 スタック チェーンは CHAIN_FUNC_EVAL チェーンになります (「CorDebugStepReason」列挙体と ICorDebugChain::GetReason メソッドを参照)。 完全なデバッガー API は引き続き通常どおりに動作します。

デッドロックまたは無限ループ状態が発生した場合、ユーザー コードが完了しない可能性があります。 このような場合は、プログラムを再開する前に ICorDebugEval::Abort を呼び出す必要があります。

このインターフェイスは、マシン間またはプロセス間のリモート呼び出しをサポートしていません。

Requirements

プラットフォーム:サポートされている .NET オペレーティング システムを参照してください。

ヘッダ: CorDebug.idl、CorDebug.h

図書館: CorGuids.lib

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