次の方法で共有


DkmClrRuntimeInstance クラス

定義

ターゲット プロセスで実行されている CLR インスタンスを表します。

派生クラス: DkmClrNcRuntimeInstance

public ref class DkmClrRuntimeInstance : Microsoft::VisualStudio::Debugger::DkmRuntimeInstance
[System.Runtime.InteropServices.Guid("ea234770-c86f-1706-8842-c6fb5311ba79")]
public class DkmClrRuntimeInstance : Microsoft.VisualStudio.Debugger.DkmRuntimeInstance
[<System.Runtime.InteropServices.Guid("ea234770-c86f-1706-8842-c6fb5311ba79")>]
type DkmClrRuntimeInstance = class
    inherit DkmRuntimeInstance
Public Class DkmClrRuntimeInstance
Inherits DkmRuntimeInstance
継承
継承
派生
属性

プロパティ

Capabilities

ランタイム機能の列挙。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
Connection

これは、モニターと IDE の間の接続を表します。 モニターが IDE と同じプロセスで実行されている場合はローカル接続にすることも、リモート接続にすることもできます。 モニター プロセスでは、接続は 1 つだけです。

(継承元 DkmRuntimeInstance)
CORSystemDirectory

[省略可能]共通言語ランタイム (CLR) インスタンスのインストール ディレクトリ。 たとえば、'c:\Windows\Microsoft.NET\Framework\v2.0.50727' などです。 これは GetCORSystemDirectory API から返されるのと同じパスであり、常に末尾のスラッシュが含まれます。

Id

プロセス内の DkmRuntimeInstance オブジェクトを識別します。

(継承元 DkmRuntimeInstance)
IsUnloaded

このオブジェクトに対して 'unloaded' イベントが発生した場合 (例: DkmThread::Unload が呼び出された場合)、またはオブジェクトが閉じている場合は true を返します。 この状態を同期せずに確認する場合は、読み取った後に返される状態が正確でなくなる可能性があるため、注意が必要です。

(継承元 DkmDataContainer)
ParentRuntime

[省略可能]別のランタイムの上に実装されるランタイムの場合、これは必要に応じて論理親を起動するために使用できます。 これにより、子ランタイムがサービスを実装していない場合に、親からサービスを要求するために使用できます。 現在、これは、子ランタイムがスタック自体をウォークしない場合に条件付きブレークポイントを評価するために、最上位のスタック フレームを取得する場合にのみ使用されます。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
Process

DkmProcess は、デバッグ中のターゲット プロセスを表します。 デバッガーはプロセスをデバッグするため、これはデバッグの基本的な単位です。 DkmProcess は、システム プロセスまたはミニダンプなどの仮想プロセスを表すことができます。

(継承元 DkmRuntimeInstance)
RuntimeVersion

[省略可能]CLR インスタンスのバージョン文字列 (例: 'v2.0.50727')。

TagValue

DkmRuntimeInstance は抽象基本クラスです。 この列挙型は、このオブジェクトがどの派生クラスのインスタンスであるかを示します。

(継承元 DkmRuntimeInstance)

メソッド

AfterSteppingArbitration(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

AfterSteppingArbitration は、ステップアービトレーションが完了した後、次のランタイム インスタンスがステップ実行を開始する前に、古い制御ランタイム インスタンスのステップ実行マネージャーによって呼び出されます。 これにより、別のランタイムが制御した場合、ランタイムはステップ実行状態をクリアできます。 他のランタイム モニターが現在の場所を要求していない場合、元のモニターは手順を完了する必要があります。 これは、NewControllingRuntimeInstance が null であることを示します。 たとえば、ランタイム インスタンスは、ステップ インがシンボルのない場所に配置され、他のランタイムが制御できない場合に、ステップ アウトを選択できます。

場所の制約: API は Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
BeforeEnableNewStepper(DkmStepper)

BeforeEnableNewStepper は、新しいステッパーが有効になる前に、ステップ マネージャーによって呼び出されます。 これにより、ランタイムは、事前ステップ関数の評価の実行など、必要な初期化を実行できます。

場所の制約: API は Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
BindMethodToObject(DkmStackWalkFrame, UInt64, DkmClrModuleInstance, Int32, DkmClrType, Int32)

Token および Module で記述されているメソッドをこのオブジェクトにバインドしようとします。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8) で導入されました。

CanDoFuncEval(DkmThread)

指定されたスレッドが、CLR がマネージド func-evals をサポートしている状態であるかどうかを確認します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

ContinueForFuncEval(DkmThread, ICorDebugEval, DkmFuncEvalFlags, UInt32, String)

プロセスを続行し、func-eval が完了するまで待ちます。 呼び出し元は、ICorDebugEval を作成して評価を設定する前に、常に 'CanDoFuncEval' を実行する必要があります。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

ContinueForFuncEval(DkmThread, ICorDebugEval, DkmFuncEvalFlags, UInt32, String, DkmClrInstructionAddress)

プロセスを続行し、func-eval が完了するまで待ちます。 呼び出し元は、ICorDebugEval を作成して評価を設定する前に、常に 'CanDoFuncEval' を実行する必要があります。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、Visual Studio 15 RTM (DkmApiVersion.VS15RTM) で導入されました。

Create(DkmProcess, DkmRuntimeInstanceId, DkmRuntimeCapabilities, DkmRuntimeInstance, String, String, DkmDataItem)

デバッグ モニターから新しいランタイム インスタンス オブジェクトを作成します。 このメソッドは、デバッグ モニターが新しいランタイム インスタンスが読み込まれたことを検出した場合 (たとえば、対応するランタイム dll がターゲット プロセスに読み込まれたときに) イベント スレッドから呼び出す必要があります。

このメソッドは RuntimeInstanceLoad イベントを送信します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

Create(DkmProcess, DkmRuntimeInstanceId, String, String, DkmDataItem)

デバッグ モニターから新しいランタイム インスタンス オブジェクトを作成します。 このメソッドは、デバッグ モニターが新しいランタイム インスタンスが読み込まれたことを検出した場合 (たとえば、対応するランタイム dll がターゲット プロセスに読み込まれたときに) イベント スレッドから呼び出す必要があります。

このメソッドは RuntimeInstanceLoad イベントを送信します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

Disassemble(DkmInstructionAddress, UInt32)

デバッグ対象ランタイムのアドレス範囲を逆アセンブルします。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
FindAppDomain(Int32)

この DkmClrRuntimeInstance 内で DkmClrAppDomain 要素を見つけます。 指定された入力キーを持つ要素が存在しない場合、FindAppDomain は失敗します。

FindClrModuleInstance(ICorDebugModule)

ICorDebugModule から DkmClrModuleInstance を取得します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

FindModulesByName(String)

このメソッドは、指定した名前に一致するすべてのモジュールを返します。

(継承元 DkmRuntimeInstance)
GetActiveStatements(DkmActiveStatement[])

すべてのスレッドでアクティブなすべてのステートメントのスタックを提供します。 したがって、同じ関数が呼び出し履歴に複数回存在する場合は、この配列内で重複します。 スタック内のエントリはスレッドごとにグループ化されます。

場所の制約: クライアントからサーバー側に呼び出すことができます。

この API は、Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) で導入されました。

GetActiveStatements(DkmWorkList, DkmCompletionRoutine<DkmGetActiveStatementsAsyncResult>)

すべてのスレッドでアクティブなすべてのステートメントのスタックを提供します。 したがって、同じ関数が呼び出し履歴に複数回存在する場合は、この配列内で重複します。 スタック内のエントリはスレッドごとにグループ化されます。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元は、完了ルーチンを通じて要求が完了したことを通知されます。

場所の制約: クライアントからサーバー側に呼び出すことができます。

この API は、Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) で導入されました。

GetAliases(DkmInspectionContext)

式で現在使用できるエイリアスの一覧を取得します。

この API は、Visual Studio 14 RTM (DkmApiVersion.VS14RTM) で導入されました。

GetAppDomains()

GetAppDomains は、この DkmClrRuntimeInstance オブジェクトの DkmClrAppDomain 要素を列挙します。

GetApplyUpdateCapabilities()

ランタイムでサポートされているエディット コンティニュ編集のセットの機能文字列を取得します。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

この API は、Visual Studio 17 RTM (DkmApiVersion.VS17RTM) で導入されました。

GetApplyUpdateCapabilities(DkmWorkList, DkmCompletionRoutine<DkmGetApplyUpdateCapabilitiesAsyncResult>)

ランタイムでサポートされているエディット コンティニュ編集のセットの機能文字列を取得します。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元は、完了ルーチンを通じて要求が完了したことを通知されます。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

この API は、Visual Studio 17 RTM (DkmApiVersion.VS17RTM) で導入されました。

GetArrayLayoutForType(DkmManagedTypeId)

マネージド型 ID を指定すると、その型の配列レイアウトを取得します。

この API は、Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) で導入されました。

GetCodePathsInRange(ICorDebugFrame, UInt32, UInt32)

GetCodePathsInRange は、特定の IL 範囲のコード パスを取得するために呼び出されます。

場所の制約: サーバー側でのみ呼び出す必要があります。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
GetCorFrame(DkmThread, UInt64, Guid)

GetCorFrame は、スタック フレームを詳細に検査するためにコンポーネントが使用できる ICorDebugFrame を取得するために使用されます。

返されるインターフェイスは、ターゲット プロセスの検査にのみ使用できます。実行の制御には使用しないでください (ステップ実行なし、ブレークポイントなし、続行なしなど)。 これはサポートされていないため、未定義の動作になります。

場所の制約: この API は、ターゲット ランタイムがスタック ウォークを実装するのと同じプロセスから呼び出す必要があります。 マネージド デバッグの場合、これは、64 ビットまたはリモート プロセスをデバッグするときに、デバッグ モニター コンポーネントからこの API を呼び出す必要があることを意味します。

この API は、Visual Studio 14 RTM (DkmApiVersion.VS14RTM) で導入されました。

GetCorProcess()

式エバリュエーターまたはその他のコンポーネントが検査に使用できる ICorDebugProcess オブジェクトへの直接アクセスを提供します。

返されるインターフェイスは、ターゲット プロセスの検査にのみ使用できます。実行の制御には使用しないでください (ステップ実行なし、ブレークポイントなし、続行なしなど)。 これはサポートされていないため、未定義の動作になります。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

GetCorThread(DkmThread)

ICorDebugThread オブジェクトへの直接アクセスを提供します。このオブジェクトは、式エバリュエーターまたはその他のコンポーネントを使用してアプリ ドメインを検査できます。

返されるインターフェイスは、ターゲット プロセスの検査にのみ使用できます。実行の制御には使用しないでください (ステップ実行なし、ブレークポイントなし、続行なしなど)。 これはサポートされていないため、未定義の動作になります。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

GetDataItem<T>()

このコンテナー インスタンスに追加された 'T' のインスタンスを取得します。 このコンテナーに 'T' が含まれていない場合、この関数は null を返します。

(継承元 DkmDataContainer)
GetEncAvailability(String)

対応するランタイム インスタンスに対して Edit と Continue がサポートされているかどうかを確認します。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

この API は、Visual Studio 16 Update 1 (DkmApiVersion.VS16Update1) で導入されました。

GetInstructionAddress(DkmInstructionAddress, Int32)

開始アドレスに対する k 番目の命令のアドレスを返します。 定数長命令セットの場合、これは単純な算術演算です。 可変長命令セットの場合、このアドレスを取得するには逆アセンブルが必要です。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
GetIntrinsicAssemblyMetaDataBytesPtr(UInt32)

"組み込みメソッド アセンブリ" のメタデータを取得します。 組み込みメソッドは、CLR 検査クエリの実行時にデバッグ エンジンが認識する特別なメソッドです。 例: C# 式エバリュエーターで "$exception" を評価する場合、C# 式コンパイラは組み込みメソッド アセンブリ内の GetException の呼び出しを出力します。 通常の呼び出しを実行する代わりに、デバッガーはメソッド呼び出しをシミュレートし、現在のスレッドで例外を返します。

この API は、Visual Studio 14 RTM (DkmApiVersion.VS14RTM) で導入されました。

GetManagedHeapSamplers()

GetManagedHeapSamplers は、この DkmRuntimeInstance オブジェクトの DkmManagedHeapSampler 要素を列挙します。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
GetManagedHeapWalkers()

GetManagedHeapWalkers は、この DkmRuntimeInstance オブジェクトの DkmManagedHeapWalker 要素を列挙します。

この API は Visual Studio 12 RTM (DkmApiVersion.VS12RTM) で導入されました。

(継承元 DkmRuntimeInstance)
GetMethodReturnAddresses(DkmClrModuleInstance, DkmClrMethodId)

特定のメソッド内のすべての ret 命令アドレスを検索するための内部ヘルパー メソッド。 Nb! アドレスは、現在または前のシーケンス ポイントではなく、実際の IL を指します。

場所の制約: なし。

この API は、Visual Studio 16 Update 6 (DkmApiVersion.VS16Update6) で導入されました。

GetModuleInstances()

GetModuleInstances は、この DkmRuntimeInstance オブジェクトの DkmModuleInstance 要素を列挙します。

(継承元 DkmRuntimeInstance)
GetOutOfProcStepAddresses(DkmStepper, DkmStackWalkFrame, DkmSteppingRange[])

ステップイン/オーバーの候補アドレスを検索するための内部ヘルパー メソッド。

場所の制約: なし。

この API は、Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) で導入されました。

GetScriptDocumentTreeNodes()

GetScriptDocumentTreeNodes は、この DkmRuntimeInstance オブジェクトの DkmScriptDocumentTreeNode 要素を列挙します。

(継承元 DkmRuntimeInstance)
GetSymbolNameForAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmGetSymbolNameForAddressAsyncResult>)

シンボルの代わりにランタイム情報を使用して、指定したアドレスのシンボル名を取得します。 現在、これは CLR ランタイム インスタンスに対して実装されているだけです。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元には、完了ルーチンを介して要求が完了したことを通知されます。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

この API は、Visual Studio 16 Update 7 (DkmApiVersion.VS16Update7) で導入されました。

(継承元 DkmRuntimeInstance)
GetTaskProviders()

GetTaskProviders は、この DkmRuntimeInstance オブジェクトの DkmTaskProvider 要素を列挙します。

(継承元 DkmRuntimeInstance)
GetThreadDisplayProperties(DkmWorkList, DkmThread, DkmCompletionRoutine<DkmGetThreadDisplayPropertiesAsyncResult>)

表示名とスレッド カテゴリを含むスレッドの表示プロパティを取得します。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元には、完了ルーチンを介して要求が完了したことを通知されます。

場所の制約: API は IDE コンポーネント (コンポーネント レベル > 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
GetThreadName(DkmThread)

スレッドの名前を計算します。

(継承元 DkmRuntimeInstance)
GetThreadName(DkmWorkList, DkmThread, DkmCompletionRoutine<DkmGetThreadNameAsyncResult>)

スレッドの名前を計算します。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元には、完了ルーチンを介して要求が完了したことを通知されます。

(継承元 DkmRuntimeInstance)
GetTypeLayoutForType(DkmManagedTypeId)

マネージド型 ID を指定すると、その型の型レイアウトを取得します。

この API は、Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) で導入されました。

NotifyStepComplete(DkmStepper)

NotifyStepComplete は、ステップが完了すると、制御されていないすべてのランタイム インスタンスでステップ マネージャーによって呼び出されます。

場所の制約: API は Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
OnFuncEvalQuickAbortDllLoaded(DkmThread, Boolean)

FEQA DLL の読み込みの試行の結果を通知します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

OnLoadComplete()

このメソッドは、RuntimeInstanceLoadComplete イベントを発生させるためにデバッグ モニターによって呼び出されます。 RuntimeInstanceLoadComplete は現在、ネイティブ ランタイム インスタンスに対してのみ送信されますが、これは将来変更される可能性があります。 イベントは、ランタイム インスタンス内のモジュールの初期セットに対して DkmModuleInstance オブジェクトが作成された後に発行されます。

このメソッドは、 オブジェクトを作成したコンポーネントによってのみ呼び出されます。

この API は Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2) で導入されました。

(継承元 DkmRuntimeInstance)
OnNewControllingRuntimeInstance(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

OnNewControllingRuntimeInstance は、ステップ アービトレーションによって新しい制御ランタイム インスタンスが選択された後、制御されていないすべてのランタイム インスタンスに対して、ステップ マネージャーによって呼び出されます。

場所の制約: API は Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
OwnsCurrentExecutionLocation(DkmStepper, DkmStepArbitrationReason)

OwnsCurrentExecutionLocation は、ステップを実行するモニターを検索している間に、ステップ マネージャーによって呼び出されます。 デバッグ対象の現在の場所がこのモニターによって認識されている場合は、ここで true を返してステップを制御できます。

場所の制約: API は Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
PrepareForFuncEvalQuickAbort(DkmThread, Boolean, UInt64)

FEQA DLL を読み込む必要があるかどうかを確認します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

ReenableFuncEval(String)

func-eval を再度有効にしようとします。

この API は、Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) で導入されました。

RemoveDataItem<T>()

このコンテナーから 'T' のインスタンスを削除します。 通常、オブジェクトが閉じられるとデータ コンテナーが自動的に空になるので、このメソッドを呼び出す必要があります。

(継承元 DkmDataContainer)
ResolveCPUInstructionAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmResolveCPUInstructionAddressAsyncResult>)

CPU InstructionAddress をランタイム固有の DkmInstructionAddress オブジェクトに解決します。

この API は現在、CLR DkmRuntimeInstance オブジェクトでのみサポートされており、CLR ランタイム インスタンスは現在、ターゲット プロセス内のいずれかのスレッドの呼び出し履歴にあるメソッド内にある命令アドレスのみを検索できます。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元は、完了ルーチンを通じて要求が完了したことを通知されます。

場所の制約: この API は通常、クライアントで呼び出す必要がありますが、CLR アドレスを変換するためにサーバー上で呼び出すことができます (ただし、ネイティブ コンパイルではありません)。

(継承元 DkmRuntimeInstance)
ResolveCPUInstructionAddress(UInt64, Boolean)

CPU InstructionAddress をランタイム固有の DkmInstructionAddress オブジェクトに解決します。

この API は現在、CLR DkmRuntimeInstance オブジェクトでのみサポートされており、CLR ランタイム インスタンスは現在、ターゲット プロセス内のいずれかのスレッドの呼び出し履歴にあるメソッド内にある命令アドレスのみを検索できます。

場所の制約: この API は通常、クライアントで呼び出す必要がありますが、CLR アドレスを変換するためにサーバー上で呼び出すことができます (ただし、ネイティブ コンパイルではありません)。

(継承元 DkmRuntimeInstance)
SetDataItem<T>(DkmDataCreationDisposition, T)

データ コンテナーに新しい項目を配置します。

(継承元 DkmDataContainer)
SetRegisterValue(DkmStackWalkFrame, Int32, ReadOnlyCollection<Byte>)

スレッドのコンテキストでレジスタの値を設定します。 より大きなレジスタで構成されるサブ レジスタがサポートされます。

(継承元 DkmRuntimeInstance)
Step(DkmStepper, DkmStepArbitrationReason)

ステップは、このモニターがステップを実行するための正しいモニターであると判断した後、ステップ・マネージャーによって呼び出されます。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
StepControlRequested(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

StepControlRequested は、制御されていないランタイム インスタンスがスレッドがランタイムへの移行にヒットしたことを検出すると、ステップ マネージャーによって呼び出されます。 現在の制御ランタイム インスタンスがステップ実行を停止できる場合は、Granted を true に設定する必要があります。 要求するランタイムが DkmStepper.TakeStepControl を呼び出すまで、実際の制御は指定されません。 この 2 つの部分のプロセスにより、呼び出し元は複数のステッパーの制御を同時に要求できます。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
StopStep(DkmStepper)

ステップ実行マネージャーによって StopStep が呼び出されるのは、ステップ実行者の残りのステップ状態をクリアするためにプロセスが続行されている場合です。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
TakeStepControl(DkmStepper, Boolean, DkmStepArbitrationReason, DkmRuntimeInstance)

TakeStepControl は、制御されていないランタイム インスタンスがスレッドがランタイムへの移行にヒットしたことを検出すると、ステップ マネージャーによって呼び出されます。 ステップ マネージャーは、現在制御しているランタイム インスタンスに呼び出しを転送します。 制御を要求するランタイム インスタンスは、最初に、制御する必要があるすべてのステッパーで StepControlRequested を呼び出す必要があります。 すべて Granted を true に設定した場合、ランタイム インスタンスは、制御する各ステッパーでこのメソッドを呼び出す必要があります。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

(継承元 DkmRuntimeInstance)
TryDisableFuncEval(String)

func-eval を無効にしようとします。

この API は、Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) で導入されました。

Unload()

RuntimeInstanceUnload は、モニターによって DkmRuntimeInstance::Unload が呼び出されたときにディスパッチャーによって送信されます。

このメソッドは、 オブジェクトを作成したコンポーネントによってのみ呼び出されます。

(継承元 DkmRuntimeInstance)

適用対象