Função _CorValidateImage
Valida as imagens do módulo gerido e notifica o carregador do sistema operativo depois de terem sido carregadas.
Sintaxe
STDAPI _CorValidateImage (
[in] PVOID* ImageBase,
[in] LPCWSTR FileName
);
Parâmetros
ImageBase
[in] Um ponteiro para a localização inicial da imagem para validar como código gerido. A imagem já tem de ser carregada para a memória.
FileName
[in] O nome do ficheiro da imagem.
Devolver Valor
Esta função devolve os valores E_INVALIDARG
padrão , E_OUTOFMEMORY
, E_UNEXPECTED
e E_FAIL
, bem como os seguintes valores.
Valor devolvido | Descrição |
---|---|
STATUS_INVALID_IMAGE_FORMAT |
A imagem é inválida. Este valor tem HRESULT 0xC0000007BL. |
STATUS_SUCCESS |
A imagem é válida. Este valor tem o HRESULT 0x000000000L. |
Observações
No Windows XP e versões posteriores, o carregador do sistema operativo verifica a existência de módulos geridos ao examinar o bit do Diretório de Descritor COM no cabeçalho de formato de ficheiro de objeto comum (COFF). Um bit definido indica um módulo gerido. Se o carregador detetar um módulo gerido, carrega MsCorEE.dll e chama _CorValidateImage
, que executa as seguintes ações:
Confirma que a imagem é um módulo gerido válido.
Altera o ponto de entrada na imagem para um ponto de entrada no runtime de idioma comum (CLR).
Para versões de 64 bits do Windows, modifica a imagem que está na memória ao transformá-la do formato PE32 para PE32+.
Regressa ao carregador quando as imagens do módulo gerido são carregadas.
Para imagens executáveis, o carregador do sistema operativo chama então a função _CorExeMain , independentemente do ponto de entrada especificado no executável. Para imagens de assemblagem DLL, o carregador chama a função _CorDllMain .
_CorExeMain
ou _CorDllMain
executa as seguintes ações:
Inicializa o CLR.
Localiza o ponto de entrada gerido a partir do cabeçalho CLR da assemblagem.
Inicia a execução.
O carregador chama a função _CorImageUnloading quando as imagens do módulo gerido são descarregadas. No entanto, esta função não executa nenhuma ação; apenas devolve.
Requisitos
Plataformas: Veja Requisitos do Sistema.
Cabeçalho: Cor.h
Biblioteca: Incluído como um recurso no MsCorEE.dll
.NET Framework Versões: Disponível desde 1.0