_ CorValidateImage função
Valida as imagens do módulo gerenciado e notifica o carregador do sistema operacional após eles terem sido carregados.
STDAPI _CorValidateImage (
[in] PVOID* ImageBase,
[in] LPCWSTR FileName
);
Parâmetros
ImageBase
[in] Um ponteiro para o local de início da imagem para validar como o código gerenciado. A imagem já deve ser carregada na memória.FileName
[in] O nome de arquivo da imagem.
Valor de retorno
Esta função retorna os valores padrão E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED, e E_FAIL, bem como os seguintes valores.
Valor de Retorno |
Descrição |
---|---|
STATUS_INVALID_IMAGE_FORMAT |
A imagem é inválida. Esse valor tem o 0xC000007BL HRESULT. |
STATUS_SUCCESS |
A imagem é válida. Esse valor tem o 0x00000000L HRESULT. |
Comentários
No Windows XP e versões posteriores, o carregador do sistema operacional procura por módulos gerenciados examinando o bit de diretório do descritor de COM, no cabeçalho de formato COFF de arquivo de objeto comum. Um conjunto de bit indica um módulo gerenciado. Se o carregador detecta um módulo gerenciado, ele carrega mscoree e chamadas _CorValidateImage, que realiza as seguintes ações:
Confirma que a imagem é um módulo gerenciado válido.
Altera o ponto de entrada na imagem para um ponto de entrada no common language runtime (CLR).
Para versões de 64 bits do Windows, modifica a imagem que está na memória, transformando-o do formato PE32 para o formato PE32 +.
Retorna o carregador quando as imagens do módulo gerenciado são carregadas.
Para imagens executáveis, o carregador do sistema operacional, em seguida, chama o _CorExeMain a função, independentemente do ponto de entrada especificado no executável. Para imagens de assembly DLL, o carregador chama o _CorDllMain função.
_CorExeMainou _CorDllMain realiza as seguintes ações:
Inicializa o CLR.
Localiza o ponto de entrada gerenciado a partir do cabeçalho do CLR do assembly.
Inicia a execução.
As chamadas do carregador de _CorImageUnloading funcionar quando gerenciado imagens de módulo são descarregadas. No entanto, essa função não executa nenhuma ação; ele simplesmente retorna.
Requisitos
Plataformas: Consulte Requisitos de sistema do .NET Framework.
Cabeçalho: Cor.h
Biblioteca: Incluído como um recurso em mscoree
.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0