Método ICLRRuntimeInfo::GetInterface
Carrega o CLR no processo atual e retorna ponteiros de interface de runtime, como ICLRRuntimeHost, ICLRStrongName e IMetaDataDispenserEx.
Esse método substitui todas as funções CorBindTo
* na seção Funções de hospedagem de CLR preterido.
Sintaxe
HRESULT GetInterface(
[in] REFCLSID rclsid,
[in] REFIID riid,
[out, iid_is(riid), retval] LPVOID *ppUnk);
Parâmetros
rclsid
[in] A interface CLSID para coclass.
riid
[in] O IID da interface solicitada rclsid
.
ppUnk
[out] Um ponteiro para a interface consultada.
Valor Retornado
Esse método retorna os seguintes HRESULTs específicos, bem como erros HRESULT que indicam falha de método.
HRESULT | Descrição |
---|---|
S_OK | O método foi concluído com sucesso. |
E_POINTER | ppUnk é nulo. |
E_OUTOFMEMORY | Não há memória suficiente disponível para identificar a solicitação. |
CLR_E_SHIM_LEGACYRUNTIMEALREADYBOUND | Um runtime diferente já estava associado à política de ativação herdada do CLR versão 2. |
Comentários
Esse método faz com que o CLR seja carregado, mas não inicializado.
A tabela a seguir mostra as combinações com suporte para rclsid
e 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 |
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MetaHost.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 4
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de