次の方法で共有


CreateDebuggingInterfaceFromVersion3 関数

CreateVersionStringFromModule 関数から返された共通言語ランタイム (CLR) バージョン文字列を受け取り、対応するデバッガー インターフェイス (通常は ICorDebug) を返します。

構文

HRESULT CreateDebuggingInterfaceFromVersion3 (
    [in] int iDebuggerVersion,
    [in] LPCWSTR szDebuggeeVersion,
    [in] LPCWSTR szApplicationGroupId,
    [in] ICLRDebuggingLibraryProvider3* pLibraryProvider,
    [out] IUnknown** ppCordb,
);

パラメーター

iDebuggerVersion
[in] デバッガーが想定するインターフェイスのバージョン。

szDebuggeeVersion
[in] CreateVersionStringFromModule 関数から返されるデバッグ対象の CLR のバージョン文字列。

szApplicationGroupId
[in] macOS で実行されているサンドボックス プロセスのアプリケーション グループ ID を表す文字列。 macOS または他のプラットフォームのサンドボックスでプロセスが実行されていない場合は NULL を渡します。

pLibraryProvider
[入力] DBI と DAC を見つけるためのコールバック インターフェイス インスタンス。 ICLRDebuggingLibraryProvider3 インターフェイスを参照してください。

ppCordb
[out] COM オブジェクト (IUnknown) へのポインターのポインター。 このオブジェクトは、返される前に ICorDebug オブジェクトにキャストされます。

値を返す

S_OK
ppCordb は、ICorDebug interface インターフェイスを実装する有効なオブジェクトを参照しています。

E_INVALIDARG
szDebuggeeVersion または ppCordb が null です。

CORDBG_E_DEBUG_COMPONENT_MISSING
CLR デバッグに必要なコンポーネントが見つかりません。 mscordbi.dll または mscordaccore.dll が対象の CoreCLR.dll と同じディレクトリに見つかりませんでした。

CORDBG_E_INCOMPATIBLE_PROTOCOL
mscordbi.dll または mscordaccore.dll が対象の CoreCLR.dll と同じバージョンではありません。

E_FAIL (またはその他の E_ リターン コード)
ICorDebug インターフェイスを返すことができません。

解説

返されるインターフェイスは、対象のプロセス内の CLR にアタッチして CLR が実行しているマネージド コードをデバッグする機能を提供します。

必要条件

プラットフォーム:.NET supported operating systems をご参照ください。

ヘッダー: dbgshim.h

ライブラリ: dbgshim.dll、libdbgshim.so、libdbgshim.dylib

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