ICLRRuntimeInfo::GetInterface メソッド
CLR を現在のプロセスに読み込み、ICLRRuntimeHost、ICLRStrongName、IMetaDataDispenserEx など、ランタイム インターフェイス ポインターを返します。
このメソッドは、「非推奨の CLR ホスト関数」セクションに記載されているあらゆる CorBindTo
* 関数に取って代わります。
構文
HRESULT GetInterface(
[in] REFCLSID rclsid,
[in] REFIID riid,
[out, iid_is(riid), retval] LPVOID *ppUnk);
パラメーター
rclsid
[入力] コクラスの CLSID インターフェイス。
riid
[入力] 要求された rclsid
インターフェイスの IID。
ppUnk
[出力] クエリが実行されたインターフェイスへのポインター。
戻り値
このメソッドは、次の特定の HRESULT と、メソッドの失敗を示す HRESULT エラーも返します。
HRESULT | 説明 |
---|---|
S_OK | メソッドは正常に完了しました。 |
E_POINTER | ppUnk が null です。 |
E_OUTOFMEMORY | メモリが足りないため、要求を処理できません。 |
CLR_E_SHIM_LEGACYRUNTIMEALREADYBOUND | レガシ CLR バージョン 2 アクティベーション ポリシーに別のランタイムが既にバインドされています。 |
解説
このメソッドを使用すると、CLR が読み込まれますが、初期化はされません。
rclsid
と riid
でサポートされている組み合わせを次の表にまとめています。
rclsid |
riid |
---|---|
CLSID_CorMetaDataDispenser | IID_IMetaDataDispenser、IID_IMetaDataDispenserEx |
CLSID_CorMetaDataDispenserRuntime | IID_IMetaDataDispenser、IID_IMetaDataDispenserEx |
CLSID_CorRuntimeHost | IID_ICorRuntimeHost |
CLSID_CLRRuntimeHost | IID_ICLRRuntimeHost |
CLSID_TypeNameFactory | IID_ITypeNameFactory |
CLSID_CLRDebuggingLegacy | IID_ICorDebug |
CLSID_CLRStrongName | IID_ICLRStrongName |
必要条件
:「システム要件」を参照してください。
ヘッダー: MetaHost.h
ライブラリ: MSCorEE.dll にリソースとして含まれます
.NET Framework のバージョン: 4 以降で使用可能
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET