次の方法で共有


DkmProcess クラス

定義

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

public ref class DkmProcess : Microsoft::VisualStudio::Debugger::DkmDataContainer
[System.Runtime.InteropServices.Guid("a6eaf62b-6db1-4f38-6359-46e9262d7a0a")]
public class DkmProcess : Microsoft.VisualStudio.Debugger.DkmDataContainer
[<System.Runtime.InteropServices.Guid("a6eaf62b-6db1-4f38-6359-46e9262d7a0a")>]
type DkmProcess = class
    inherit DkmDataContainer
Public Class DkmProcess
Inherits DkmDataContainer
継承
継承
属性

プロパティ

BaseDebugMonitorId

DkmBaseDebugMonitorId は、デバッグされたプロセスの検査と制御に使用される基本デバッグ モニターを識別します。 たとえば、DkmBaseDebugMonitorId.WindowsProcess は Win32 デバッグ API によってデバッグされるプロセスに使用され、DkmBaseDebugMonitorId.DumpFile はミニダンプに使用されます。

Connection

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

DebugLaunchSettings

プロジェクト システムまたは LaunchDebugTargets の他の呼び出し元 (または他のさまざまなデバッグ開始 API) からのデバッグ開始操作中に指定された設定。

EngineSettings

セッション全体のデバッグ設定が含まれます。 このオブジェクトのインスタンスは、エンジン Guid ごとに 1 つあります (たとえば、COMPlusOnlyEng2 のインスタンスは 1 つ、COMPlusNativeEng の場合は 1 つのインスタンス)。

IsAppPackage

プロセスが Windows ストア アプリ パッケージまたはアプリ パッケージに属している場合Windows Phone True。

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

IsMultiArch

True を指定すると、プロセスに複数のアーキテクチャのコードが含まれます。

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

IsNativeDebuggingEnabled

true の場合、デバッガーはネイティブ コードのデバッグを試みます。ネイティブ例外で停止し、シンボルを読み込み、呼び出し履歴にネイティブ フレームを表示し、ブレークポイントをバインドしてヒットし、中断状態の間はネイティブ スレッドを停止したままにします。

IsUnloaded

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

(継承元 DkmDataContainer)
LivePart

[省略可能]実行中のプロセスに関連する情報。 たとえば、このパーツはミニダンプには存在しません。

Path

プロセスの開始実行可能ファイルへの完全パス。

StartMethod

StartMethod では、デバッグ エンジンがこのプロセスのデバッグを開始した方法について説明します。

SystemInformation

このプロセスが実行されているコンピューター システムに関する情報が含まれています。 このプロセスが WOW (64 ビット OS では 32 ビット エミュレーション) で実行されている場合、この情報は 64 ビット サブシステムではなく 32 ビット サブシステム用になります。

UniqueId

このプロセス オブジェクトを一意に識別する Guid。 この Guid 値は、SDM レイヤー (IDebugProcess2::GetProcessId) とオートメーション レイヤーで公開される Guid と同じです。

メソッド

AbortingFuncEvalExecution(DkmFuncEvalFlags)

AbortingFuncEvalExecution は、関数の評価を中止するときにランタイム デバッグ モニターによって呼び出されます。 AbortingFuncEvalExecution は DkmProcess オブジェクトの内部状態を更新するため、停止イベント マネージャーは、関数評価の完了ブレークポイントまたは非同期中断の 2 つの停止イベントを許可します。

AddExceptionTrigger(DkmWorkList, Guid, DkmExceptionTrigger, DkmCompletionRoutine<DkmAddExceptionTriggerAsyncResult>)

例外トリガーが満たされたときに ExceptionTriggerHit イベントが送信されるように、例外トリガーを追加します。

この {SourceId, DkmExceptionTrigger} タプルに対して既に定義されている例外トリガーがある場合、既存のトリガーは新しい設定で変更されます。 たとえば、コンポーネントがアクセス違反例外がスローされたときに停止するトリガーを定義し、後で Win32 例外が未処理になったときにトリガーを起動するように設定した場合、アクセス違反トリガーは削除されます。

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

AddExceptionTrigger(Guid, DkmExceptionTrigger)

例外トリガーが満たされたときに ExceptionTriggerHit イベントが送信されるように、例外トリガーを追加します。

この {SourceId, DkmExceptionTrigger} タプルに対して既に定義されている例外トリガーがある場合、既存のトリガーは新しい設定で変更されます。 たとえば、コンポーネントがアクセス違反例外がスローされたときに停止するトリガーを定義し、後で Win32 例外が未処理になったときにトリガーを起動するように設定した場合、アクセス違反トリガーは削除されます。

AllocateVirtualMemory(UInt64, Int32, Int32, Int32)

ターゲット プロセスの仮想アドレス空間内のメモリ領域を予約/コミットします。 この関数は、MEM_RESET が使用されない限り、割り当てるメモリをゼロに初期化します。 詳細については、MSDN の VirtualAlloc Win32 API を参照してください。

AsyncBreak(Boolean)

このメソッドは、デバッグ対象プロセスの実行を非同期的に中断するようにデバッグ モニターに指示します。 AsyncBreakComplete イベントは、操作の完了後に送信されます。

BeforeStopDebugging()

ターゲット プロセスが終了またはデタッチされる前に通知されるハンドラー。

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

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

ClearAllGPUMemoryAccessWarnings()

すべてのアクティブな GPU メモリ アクセス警告を無効にします。

ClearExceptionTriggers(Guid)

特定の SourceId で設定されているすべての例外トリガーを削除します。 このメソッドが返された後、例外トリガーは ExceptionTriggerHit イベントを発生させなくなります。 例外トリガーは、DkmProcess オブジェクトが閉じられると自動的にクリアされます。

Create(DkmTransportConnection, String, Guid, DkmStartMethod, DkmEngineSettings, DkmDebugLaunchSettings, DkmSystemInformation, Guid, Boolean, Boolean, Boolean, DkmProcess+Live, DkmDataItem)

新しいプロセス オブジェクトを作成します。 このメソッドは、IDkmStartDebuggingOperations.AttachToProcess または IDkmStartDebuggingOperations.ResumeDebuggedProcess の処理の一環として、イベント スレッドの基本デバッグ モニターから呼び出されます。

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

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

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

Create(DkmTransportConnection, String, Guid, DkmStartMethod, DkmEngineSettings, DkmDebugLaunchSettings, DkmSystemInformation, Guid, Boolean, Boolean, DkmProcess+Live, DkmDataItem)

新しいプロセス オブジェクトを作成します。 このメソッドは、IDkmStartDebuggingOperations.AttachToProcess または IDkmStartDebuggingOperations.ResumeDebuggedProcess の処理の一環として、イベント スレッドの基本デバッグ モニターから呼び出されます。

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

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

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

Create(DkmTransportConnection, String, Guid, DkmStartMethod, DkmEngineSettings, DkmDebugLaunchSettings, DkmSystemInformation, Guid, Boolean, DkmProcess+Live, DkmDataItem)

新しいプロセス オブジェクトを作成します。 このメソッドは、IDkmStartDebuggingOperations.AttachToProcess または IDkmStartDebuggingOperations.ResumeDebuggedProcess の処理の一環として、イベント スレッドの基本デバッグ モニターから呼び出されます。

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

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

CreateNativeInstructionAddress(UInt64)

ネイティブ モジュールへの CPU 命令を解決し、この CPU 命令を表す DkmNativeInstructionAddress を返します。 命令ポインターがモジュール内にない場合は、代わりに DkmUnknownInstructionAddress オブジェクトが返されます。

Detach()

このメソッドは、ターゲット プロセスからデタッチするようにモニターに指示するために呼び出されます。 これにより、イベント スレッドで ProcessExit イベントが送信されます。

Disassemble(DkmInstructionAddress, UInt32)

デバッグ対象プロセスでアドレス範囲を逆アセンブルします。

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

FindNativeModule(UInt64)

仮想アドレスをネイティブ モジュールに解決します。 仮想アドレスがモジュール内にない場合は、null が返されます (ネイティブS_FALSEリターン コード)。 無効になっているモジュールは返されません。

FindNativeModule(UInt64, Boolean)

仮想アドレスをネイティブ モジュールに解決します。 仮想アドレスがモジュール内にない場合は、null が返されます (ネイティブS_FALSEリターン コード)。

FindProcess(Guid)

DkmProcess オブジェクトを検索します。 指定された入力キーを持つオブジェクトが存在しない場合、FindProcess は失敗します。

FindProcessSnapshot(UInt32)

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

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

FindRuntimeInstance(DkmRuntimeInstanceId)

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

FindSystemThread(Int32)

この DkmProcess 内で DkmThread 要素を見つけます。 指定された入力キーを持つ要素が存在しない場合、FindSystemThread は失敗します。 オブジェクトが見つかった場合は、常に 'System' パーツが含まれます。

FreeVirtualMemory(UInt64, Int32, Int32)

ターゲット プロセスの仮想アドレス空間内のメモリ領域を解放/デコミットします。 詳細については、MSDN の VirtualFree Win32 API を参照してください。

GetComputeKernels()

GetComputeKernels は、この DkmProcess オブジェクトの DkmGPUComputeKernel 要素を列挙します。

GetDataItem<T>()

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

(継承元 DkmDataContainer)
GetDumpExePath()

デバッグ中のミニダンプ内のプライマリ実行可能ファイルへのパスを返します。

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

GetDumpSaveTime()

ミニダンプが保存された時刻を返します。

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

GetEndingTimeContext()

トレースの終了位置を表す時間コンテキストを取得します。

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

GetGPUBreakpointBehavior()

プロセスのブレークポイントの動作を取得します。

GetHandleCount()

プロセス内のアクティブなハンドルの数を取得します。

GetInstructionAddress(DkmInstructionAddress, Int32)

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

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

GetInstructionAddress(DkmWorkList, DkmInstructionAddress, Int32, DkmCompletionRoutine<DkmGetRelativeInstructionAddressAsyncResult>)

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

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

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

GetInstructionAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmGetInstructionAddressAsyncResult>)

CPU InstructionAddress を DkmInstructionAddress に解決します。

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

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

GetManagedStowedException()

ダンプからマネージド 格納例外を取得します。 管理された積み込み例外がない場合は、S_FALSEが返されます。

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

GetMemoryReadTime(UInt64, UInt32, DkmMemoryTimeFlags)

読み取られたメモリからの値が解決された現在のプロセス時間に対する相対的な時間を確認するために呼び出されます。

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

GetNativeRuntimeInstance()

プロセス内の単純なコード用の DkmRuntimeInstance へのアクセスを提供します。 1 つのプロセスに対して DkmRuntimeInstance が 1 つだけ存在します。

GetNativeStowedException()

ダンプからネイティブの格納例外を取得します。 ネイティブの格納例外がない場合は、S_FALSEが返されます。

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

GetPendingBreakpoints()

GetPendingBreakpoints は、この DkmProcess オブジェクトの DkmPendingBreakpoint 要素を列挙します。

GetProcesses()

GetProcesses は、作成されたすべての DkmProcess オブジェクトを列挙します。

GetProcessExecuteDirection()

プロセスが前方または逆方向に実行されているかどうかを示す値を取得します。 このメソッドは、時間移動プロセスでのみ実装されます。

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

GetProcessorArchitecture(UInt64, DkmProcessorArchitecture)

特定のアドレスのアーキテクチャを決定します。

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

GetProcessSnapshots()

GetProcessSnapshots は、この DkmProcess オブジェクトの DkmProcessSnapshot 要素を列挙します。

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

GetRunningTime()

ResetRunningTime() が最後に呼び出されてからデバッグ対象が実行していたクロック サイクルの数を取得します。

GetRuntimeFunctionResolutionRequests()

GetRuntimeFunctionResolutionRequests は、この DkmProcess オブジェクトの DkmRuntimeFunctionResolutionRequest 要素を列挙します。

GetRuntimeInstances()

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

GetSerializedProcessInfo()

シリアル化されたプロセスに関する情報を取得します。

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

GetSourceSnapshot()

デバッグされたプロセスのソース スナップショット オブジェクトを取得します。 デバッグされたプロセスはスナップショットを表す必要があります。

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

GetStowedExceptions()

ダンプから積み込まれた例外を取得します。

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

GetSystemThreads()

プロセス内のアクティブなシステム スレッドの一覧を提供します。 システム スレッドではないスレッド (DkmThread::System が null) またはアンロードされたスレッドは、このコレクションに存在しません。

GetTargetCompositionServices(DkmTargetCompositionScenario, Object)

ターゲットコンポジションベースの拡張機能にアクセスするために使用できる、対応するシナリオの IDebugServiceManager を取得します。

場所の制約: ターゲットコンポジション インターフェイスはマシン間でマーシャリングできませんが、使用可能な場合は安全に使用できます。

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

GetThreads()

GetThreads は、この DkmProcess オブジェクトの DkmThread 要素を列挙します。

InvisibleWriteMemory(UInt64, Byte[])

ターゲット プロセスにメモリを書き込みますが、ReadMemory の呼び出しから書き込みを非表示にします。 この API は、デバッガー機能を実装するために、ターゲット プロセス内の命令またはデータにパッチを適用するために使用できます。 データ転送が行われる前に、システムは、指定したサイズのベース アドレスとメモリ内のすべてのデータに書き込みアクセス可能であることを確認し、アクセスできない場合は、E_INVALID_MEMORY_ADDRESS エラーが発生します。

IsLoadComplete()

プロセスのデバッグを開始したときに、すべてのランタイムに対して最初のモジュールの読み込み/スレッド作成がすべて送信された場合は true を返します。 他のランタイム インスタンスの読み込みに追加の時間が必要になる場合があるため、この定義は読み込みの完了の Win32 デバッグ API 定義とは異なる場合があることに注意してください。

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

IsStopped()

このメソッドを使用すると、ディスパッチャーによってプロセスが停止したと見なされるかどうかをコンポーネントで判断できます。 このメソッドは、ターゲット プロセスを停止する必要があるインターフェイス メソッド内から呼び出す必要はありませんが、実行モードから呼び出される可能性がある操作中に役立つ場合があります。

LocateBinary(String, String, String, UInt32, UInt32)

このメソッドは、ローカル ディスクと構成されているシンボル サーバーで、パラメーターに一致するバイナリを検索します。 ローカル ディスク上のこのファイルへのパスが返されます。 ファイルがシンボル サーバー上にあった場合は、キャッシュにダウンロードされ、ローカル パスが返されます。

OnAsyncBreakComplete(DkmAsyncBreakStatus, DkmThread)

AsyncBreakComplete イベントを発生させます。 イベント シンク インターフェイスを実装するコンポーネントは、イベント通知を受け取ります。 このメソッドはイベントをエンキューし、コントロールはすぐに呼び出し元に戻ります。

OnEntryPoint(DkmThread)

EntryPoint イベントを発生させます。 イベント シンク インターフェイスを実装するコンポーネントは、イベント通知を受け取ります。 このメソッドはイベントをエンキューし、コントロールはすぐに呼び出し元に戻ります。

OnHiddenEntryPoint(DkmThread)

HiddenEntryPoint イベントを発生させます。 イベント シンク インターフェイスを実装するコンポーネントは、イベント通知を受け取ります。 このメソッドはイベントをエンキューし、コントロールはすぐに呼び出し元に戻ります。

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

OnInstructionPatchInserted(UInt64, Byte[])

ターゲット プロセスの命令メモリが変更されたことを他のコンポーネントに通知するために、ベース デバッグ モニターによって呼び出されるメソッド。 現在、これはブレークポイントの挿入にのみ使用されます。

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

OnInstructionPatchRemoved(UInt64, Byte[])

ターゲット プロセスの命令メモリが元の状態に復元されたことを他のコンポーネントに通知するために、ベース デバッグ モニターによって呼び出されるメソッド。 現在、これはブレークポイントの削除にのみ使用されます。

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

OnLoadComplete()

このメソッドは、LoadComplete イベントを発生させるために、プロセスの基本デバッグ モニターによって呼び出されます。 LoadComplete は、プロセス内のモジュールの初期セットに対して DkmModuleInstance オブジェクトが作成され、通常はスレッドの初期セットも作成された後に発行されます。

ロード完了イベントは、DkmLoadCompleteEventDeferral.Add を使用してランタイム デバッグ モニターによって遅延される場合があります。この場合、このメソッドはすぐに完了します。 それ以外の場合、このメソッドはイベント同期インターフェイスを実装するすべてのコンポーネントにイベントを送信します。 すべてのコンポーネントに通知されると、コントロールが返されます。

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

OnProcessSnapshotAdded(DkmProcessSnapshot)

特定のプロセスに対してプロセス スナップショットが取得された後に通知されるハンドラー。

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

OnProcessSnapshotRemoved(DkmProcessSnapshot)

プロセス スナップショットが特定のプロセスから削除された後に通知されるハンドラー。

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

OnTraceTimeContextSet(DkmTraceTimeContext, DkmTraceTimeContext, DkmTraceTimeContext, DkmThread)

TraceTimeContextSet イベントを発生させます。 イベント シンク インターフェイスを実装するコンポーネントは、イベント通知を受け取ります。 すべてのコンポーネントが通知されると、制御が返されます。

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

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

QueryPerformanceCounters(DkmWorkList, DkmCompletionRoutine<DkmPerformanceCountersAsyncResult>)

プロセス内のランタイムによって生成されたイベントから収集された IDkmPerformanceMeasurementDispatcherService からタイミング データを取得する非同期メソッド。 デバッガーのオーバーヘッドを取得すると非常にコストがかかる可能性があるため、これは非同期的に呼び出されます。

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

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

ReadMemory(UInt64, DkmReadMemoryFlags, Byte[])

ターゲット プロセスのメモリを読み取る。

ReadMemory(UInt64, DkmReadMemoryFlags, Void*, Int32)

ターゲット プロセスのメモリを読み取る。

ReadMemoryString(UInt64, DkmReadMemoryFlags, UInt16, Int32)

ターゲット プロセス プロセスのメモリから null で終わる文字列を読み取ります。 これは、ANSI または Unicode (UTF-8、UTF-16、または UTF-32) 文字列を読み取るために使用できます。

RemoveDataItem<T>()

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

(継承元 DkmDataContainer)
RemoveExceptionTrigger(DkmWorkList, Guid, DkmExceptionTrigger, DkmCompletionRoutine<DkmRemoveExceptionTriggerAsyncResult>)

以前に設定した例外トリガーを削除します。 処理ステージは無視され、最初に指定された値と一致する必要はありません。

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

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

RemoveExceptionTrigger(Guid, DkmExceptionTrigger)

以前に設定した例外トリガーを削除します。 処理ステージは無視され、最初に指定された値と一致する必要はありません。

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

RemoveSnapshotById(UInt32)

このプロセスのプロセス スナップショットを削除します。

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

RemoveSnapshots()

このプロセスのプロセス スナップショットを削除します。

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

SearchRuntimeFunctionTable(UInt64, UInt64)

メソッドは、可能であればアドレスのIMAGE_RUNTIME_FUNCTION_ENTRYの内容を返します。 静的エントリを検索する場合、呼び出し元は DkmNativeModuleInstance で同等のメソッドを呼び出す必要があります。

SetCoreDumpParserTargetCompositionServices(Object)

ターゲットコンポジションベースの拡張機能にアクセスするために使用できるコア ファイル解析シナリオの IDebugServiceManager を取得します。

場所の制約: ターゲットコンポジションインターフェイスはマシン間でマーシャリングすることはできませんが、使用可能な場合は安全に使用できます。

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

SetDataItem<T>(DkmDataCreationDisposition, T)

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

(継承元 DkmDataContainer)
SetDetachUnavailable(Int32)

プロセスでデタッチが許可されていないことを示すために、コンポーネントによって呼び出されます。

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

SetGPUMemoryAccessWarning(Int32, Boolean)

特定の GPU メモリ アクセス警告を有効または無効にします。

SetProcessExecuteDirection(DkmProcessExecuteDirection)

プロセスの実行方向を設定します。 方向は、前方または逆にすることができます。 このメソッドは、時間移動プロセスでのみ実装されます。

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

SetRunningTime(UInt64)

実行時間カウンターを指定した値に設定します。

StoppingEventProcessingBegin(Boolean)

StoppingEventProcessingBegin は、イベント スレッドの基本デバッグ モニターによって呼び出されます。 これは、ターゲット プロセスが停止され、停止イベントに達した可能性があることをディスパッチャーに通知します。 たとえば、Win32 基本デバッグ モニターは、オペレーティング システムからEXCEPTION_DEBUG_EVENTを受信するたびにこれを呼び出します。 このメソッドは、停止イベントの送信が許可されるように DkmProcess オブジェクトの内部状態を更新します。

StoppingEventProcessingContinue()

StoppingEventProcessingContinue は、イベント スレッドの基本デバッグ モニターによって呼び出されます。 このメソッドは、現在のバッチ内のすべての停止イベントが発行された後に呼び出されます (例: DkmRuntimeBreakpoint.OnHit と呼ばれます)。 このメソッドは、停止イベント通知インターフェイスを実装しているコンポーネントに通知し、実行マネージャーを呼び出してプロセスを安全なポイントに移動します。 基本デバッグ モニターは、StoppingEventProcessingBegin の呼び出しが成功した後に StoppingEventProcessingContinue を呼び出す必要があります。 すべての停止イベントを発行した後のベース デバッグ モニター。

基本デバッグ モニターは、このメソッド内にある間に再入可能に呼び出されることを想定する必要があります。

TakeSnapshot(UInt64, DkmThread)

デバッグ対象のスナップショットを取得します。

場所の制約: サーバー。

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

TakeSnapshotWithException(UInt64, DkmExceptionInformation)

デバッグ対象のスナップショットを取得します。

場所の制約: サーバー。

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

Terminate(Int32)

このメソッドは、ターゲット プロセスを終了するようにモニターに指示するために呼び出されます。 これにより、イベント スレッドで送信される ProcessExit イベントがトリガーされます。

TryLocateBinary(String, String, String, UInt32, UInt32)

以前にイメージが見つかっていないか、読み込もうとしていない可能性があるバイナリの検索を開始するために呼び出されます。 このメソッドは、ローカル ディスクと構成されたシンボル サーバーで、パラメーターに一致するバイナリを検索します。 ローカル ディスク上のこのファイルへのパスが返されます。 ファイルがシンボル サーバー上にあった場合は、キャッシュにダウンロードされ、ローカル パスが返されます。

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

Unload(Int32)

DkmProcess::Unload がモニターによって呼び出されると、ディスパッチャーによって ProcessExit が送信されます。

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

VolatileReadMemory(UInt64, Byte[])

ターゲット プロセスからメモリを読み取る。 このメソッドは、(ターゲットが停止した場合だけでなく) いつでもこのメソッドを呼び出すことができるという点で、'ReadMemory' とは異なり、デバッガーはこの操作の結果をキャッシュしようとしません。

VolatileReadMemory(UInt64, Void*, Int32)

ターゲット プロセスからメモリを読み取る。 このメソッドは、(ターゲットが停止した場合だけでなく) いつでもこのメソッドを呼び出すことができるという点で、'ReadMemory' とは異なり、デバッガーはこの操作の結果をキャッシュしようとしません。

VolatileWriteMemory(UInt64, Byte[])

ターゲット プロセスのメモリに書き込みます。 このメソッドは、(ターゲットが停止した場合だけでなく) いつでもこのメソッドを呼び出すことができるという点で、'WriteMemory' とは異なり、デバッガーはこの操作の結果をキャッシュしようとしません。 メモリを書き込めない場合は、E_INVALID_MEMORY_ADDRESS エラーが発生します。 メモリ書き込みが実行モードから発生する可能性があるため、コピー操作が既に開始された後にこのエラーが発生する可能性があるため、ターゲット プロセスでメモリが破損する可能性があります。 このため、この関数は注意して使用する必要があり、エラーは致命的な場合があります。

WaitForPausingEventProcessingComplete(Int32, Boolean)

このメソッドは、モニター コンポーネントから呼び出して、一時停止イベント処理で停止していないもの、および現在完了するために発生している IDkmProcessContinueNotification 処理を待機できます。 特に、これは、ターゲット プロセスが実行する機会を持っていることを確認して func-evals を中止しようとする場合に役立ちます。 このメソッドは、イベントの一時停止が直ちに増えないという保証を提供しないため、この API から戻った後にイベント処理の停止が行われないとコードで想定しないでください。

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

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

WriteDump(DkmDumpType, String, DkmThread)

このメソッドは、指定されたパスにプロセスのメモリ ダンプを書き込みます。

WriteMemory(UInt64, Byte[])

ターゲット プロセスにメモリを書き込みます。 データ転送が行われる前に、システムは、指定したサイズのベース アドレスとメモリ内のすべてのデータに書き込みアクセスが可能であることを確認し、アクセスできない場合は、E_INVALID_MEMORY_ADDRESS エラーが発生します。

適用対象