Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Resolve um módulo dentro de um assembly ou um arquivo de recurso vinculado (mas não um inserido).
Sintaxe
HRESULT ProvideModule (
[in] ModuleBindInfo *pBindInfo,
[out] DWORD *pdwModuleId,
[out] IStream **ppStmModuleImage,
[out] IStream **ppStmPDB
);
Parâmetros
pBindInfo
[in] Um ponteiro para uma instância moduleBindInfo que descreve o AppDomain, assembly e nome do módulo solicitado.
pdwModuleId
[out] Um ponteiro para um identificador exclusivo para o IStream que contém o módulo carregado.
ppStmModuleImage
[out] Um ponteiro para o endereço de um objeto IStream, que contém a imagem PE (executável portátil) a ser carregada ou nulo se o módulo não puder ser encontrado.
ppStmPDB
[out] Um ponteiro para o endereço de um objeto IStream, que contém as informações de depuração do programa (PDB) do módulo solicitado ou nulo se o arquivo .pdb não foi encontrado.
Valor Retornado
| HRESULT | Descrição |
|---|---|
| S_OK |
ProvideModule retornado com êxito. |
| HOST_E_CLRNOTAVAILABLE | O CLR (Common Language Runtime) não foi carregado em um processo ou está em um estado no qual não pode executar o código gerenciado ou processar a chamada com sucesso. |
| HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
| HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
| HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
| E_FAIL | Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
| COR_E_FILENOTFOUND (0x80070002) | O assembly solicitado ou o recurso vinculado não pôde ser localizado. |
| E_NOT_SUFFICIENT_BUFFER |
pdwModuleId não é grande o suficiente para conter o identificador que o host deseja retornar. |
Comentários
O valor de identidade retornado para pdwModuleId é especificado pelo host. Os identificadores devem ser exclusivos dentro do tempo de vida de um processo. O CLR usa esse valor como o identificador exclusivo para o fluxo associado. Ele verifica cada valor em relação aos valores retornados para pAssemblyId por chamadas para ProvideAssembly e em relação aos valores pdwModuleId retornados por outras chamadas para ProvideModule. Se o host retornar o mesmo valor de identificados para outro IStream, o CLR verificará se o conteúdo desse fluxo já foi mapeado. Nesse caso, o CLR carregará a cópia existente da imagem em vez de mapear uma nova. Portanto, o identificador também não deve se sobrepor aos identificadores de assembly retornados de ProvideAssembly.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0