Método de ICLRMetaHostPolicy::GetRequestedRuntime
Fornece uma interface para uma versão preferencial do common language runtime (CLR) com base em uma diretiva de hospedagem, assembly gerenciado, seqüência de caracteres de versão e fluxo de configuração. Este método não é realmente carregar ou ativar o CLR, mas simplesmente retorna o ICLRRuntimeInfo interface que representa o resultado de diretiva. Este método substitui a GetRequestedRuntimeInfo, GetRequestedRuntimeVersion, CorBindToRuntimeHost, CorBindToRuntimeByCfg, e GetCORRequiredVersion métodos.
HRESULT GetRequestedRuntime(
[in] METAHOST_POLICY_FLAGS dwPolicyFlags,
[in] LPCWSTR pwzBinary,
[in] IStream *pCfgStream,
[in, out, size_is(*pcchVersion)] LPWSTR pwzVersion,
[in, out] DWORD *pcchVersion,
[out, size_is(*pcchImageVersion)] LPWSTR pwzImageVersion,
[in, out] DWORD *pcchImageVersion,
[out] DWORD *pdwConfigFlags,
[in] REFIID riid
[out, iid_is(riid), retval] LPVOID *ppRuntime);
Parâmetros
Nome |
Descrição |
---|---|
dwPolicyFlags |
[in] Necessário. Especifica um membro da METAHOST_POLICY_FLAGS enumeração, representando uma política de vinculação e qualquer número de modificadores. A única diretiva que está disponível no momento é METAHOST_POLICY_HIGHCOMPAT. Modificadores incluem METAHOST_POLICY_EMULATE_EXE_LAUNCH, METAHOST_POLICY_APPLY_UPGRADE_POLICY, METAHOST_POLICY_SHOW_ERROR_DIALOG, METAHOST_POLICY_USE_PROCESS_IMAGE_PATH, e METAHOST_POLICY_ENSURE_SKU_SUPPORTED. |
pwzBinary |
[in] Opcional. Especifica o caminho do arquivo de assembly. |
pCfgStream |
[in] Opcional. Especifica o arquivo de configuração como um System.Runtime.InteropServices.ComTypes.IStream. |
pwzVersion |
[in, out] Opcional. Especifica ou retorna a versão do CLR preferencial a ser carregado. |
pcchVersion |
[in, out] Necessário. Especifica o tamanho esperado do pwzVersion como entrada, para evitar saturações de buffer. Se pwzVersion for nulo, pcchVersion contém o tamanho esperado do pwzVersion quando GetRequestedRuntime retorna, para permitir a pré-distribuição; Caso contrário, pcchVersion contém o número de caracteres gravados pwzVersion. |
pwzImageVersion |
[out] Opcional. Quando GetRequestedRuntime retorna, que contém a versão CLR correspondente para o ICLRRuntimeInfo interface é retornado. |
pcchImageVersion |
[in, out] Opcional. Especifica o tamanho do pwzImageVersion como entrada para evitar saturações de buffer. Se pwzImageVersion for nulo, pcchImageVersion contém o tamanho necessário do pwzImageVersion quando GetRequestedRuntime retorna, para permitir uma alocação prévia. |
pdwConfigFlags |
[out] Opcional. Se GetRequestedRuntime usa um arquivo de configuração durante o processo de vinculação, ao retornar, pdwConfigFlags contém um METAHOST_CONFIG_FLAGS valor que indica se a <startup> elemento tem o useLegacyV2RuntimeActivationPolicy o conjunto de atributos e o valor do atributo. Aplicar o METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_MASK de máscara para pdwConfigFlags para obter os valores relevantes para useLegacyV2RuntimeActivationPolicy. |
riid |
[in] Especifica o identificador de interface para a operação IID_ICLRRuntimeInfo ICLRRuntimeInfo interface. |
ppRuntime |
[out] Quando GetRequestedRuntime retorna, contém um ponteiro para o correspondente ICLRRuntimeInfo interface. |
Comentários
Quando esse método for bem-sucedido, ele tem o efeito colateral da combinação de sinalizadores adicionais com os sinalizadores de inicialização padrão atual da interface do runtime retornado, se e somente se um ou mais dos seguintes elementos existem no fluxo de configuração dentro de <configuration><runtime> seção:
<gcServer enabled="true"/>faz com que STARTUP_SERVER_GC a ser definido.
<etwEnable enabled="true"/>faz com que STARTUP_ETW a ser definido.
<appDomainResourceMonitoring enabled="true"/>faz com que STARTUP_ARM a ser definido.
O padrão resultante STARTUP_FLAGS valor é a combinação de OR bit a bit dos valores que são definidas a partir da lista anterior com sinalizadores de inicialização padrão.
Valor de retorno
Esse método retorna o seguintes HRESULTs específicos, bem como o HRESULT erros que indicam falha de método.
HRESULT |
Descrição |
---|---|
S_OK |
O método foi concluído com êxito. |
E_POINTER |
pwzVersionnão é nulo e pcchVersion é null. - ou - pwzImageVersionnão é nulo e pcchImageVersion é null. |
E_INVALIDARG |
dwPolicyFlagsnão especifique METAHOST_POLICY_HIGHCOMPAT. |
Requisitos
Plataformas: Consulte Requisitos de sistema do .NET Framework.
Cabeçalho: MetaHost.h
Biblioteca: Incluído como um recurso em mscoree
.NET Framework versões: 4
Consulte também
Referência
Interface de ICLRMetaHostPolicy