ICLRRuntimeInfo::GetInterface 方法
將 CLR 載入到目前的處理序,並傳回執行階段介面指標,例如 ICLRRuntimeHost、ICLRStrongName 和 IMetaDataDispenserEx。
這個方法會取代已被取代的 CLR 裝載函式一節中的所有 CorBindTo
* 函式。
語法
HRESULT GetInterface(
[in] REFCLSID rclsid,
[in] REFIID riid,
[out, iid_is(riid), retval] LPVOID *ppUnk);
參數
rclsid
[in] coclass 的 CLSID 介面。
riid
[in] 所要求 rclsid
介面的 IID。
ppUnk
[out] 所查詢介面的指標。
傳回值
這個方法會傳回下列特定的 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 起可用