다음을 통해 공유


ICLRRuntimeInfo::GetInterface Method

CLR을 현재 프로세스에 로드하고 ICLRRuntimeHost, ICLRStrongNameIMetaDataDispenserEx와 같은 런타임 인터페이스 포인터를 반환합니다.

이 메서드는 사용되지 않는 CLR 호스팅 함수 섹션의 모든 CorBindTo* 함수를 대체합니다.

Syntax

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

Parameters

rclsid [in] coclass에 대한 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이 로드되지만 초기화되지 않습니다.

다음 표에서는 지원되는 조합과 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

Requirements

플랫폼:시스템 요구 사항을 참조하세요.

Header: MetaHost.h

도서관: MSCorEE.dll 리소스로 포함됨

.NET Framework 버전: 4 이후 사용 가능

See also