次の方法で共有


ICLRRuntimeInfo::GetInterface Method

CLR を現在のプロセスに読み込み、 ICLRRuntimeHostICLRStrongNameIMetaDataDispenserEx などのランタイム インターフェイス ポインターを返します。

このメソッドは、非推奨の CLR ホスティング関数セクションのすべてのCorBindTo* 関数よりも優先されます。

Syntax

HRESULT GetInterface(
[in]  REFCLSID rclsid,
[in]  REFIID   riid,
[out, iid_is(riid), retval] LPVOID *ppUnk);

Parameters

rclsid [in]コクラスの CLSID インターフェイス。

riid [in]要求された rclsid インターフェイスの IID。

ppUnk [out]クエリされたインターフェイスへのポインター。

Return Value

このメソッドは、次の特定の HRESULT と、メソッドエラーを示す HRESULT エラーを返します。

HRESULT Description
S_OK メソッドは正常に完了しました。
E_POINTER ppUnk が null です。
E_OUTOFMEMORY 要求を処理するのに十分なメモリがありません。
CLR_E_SHIM_LEGACYRUNTIMEALREADYBOUND 別のランタイムが、レガシ CLR バージョン 2 のアクティブ化ポリシーに既にバインドされています。

Remarks

このメソッドにより、CLR が読み込まれますが、初期化されません。

次の表に、 rclsidriidでサポートされている組み合わせを示します。

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

Requirements

:システム要件」を参照してください。

Header: MetaHost.h

図書館: MSCorEE.dll にリソースとして含まれる

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

See also