Поделиться через


Функция _CorValidateImage

Проверяет образы управляемых модулей и уведомляет загрузчик операционной системы после их загрузки.

Синтаксис

STDAPI _CorValidateImage (
   [in] PVOID* ImageBase,  
   [in] LPCWSTR FileName  
);  

Параметры

ImageBase
[in] Указатель на начальное расположение образа для проверки как управляемого кода. Образ уже должен быть загружен в память.

FileName
[in] Имя файла образа.

Возвращаемое значение

Эта функция возвращает стандартные значения E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTEDи E_FAIL, а также следующие значения.

Возвращаемое значение Описание
STATUS_INVALID_IMAGE_FORMAT Недопустимый образ. Это значение имеет значение HRESULT 0xC000007BL.
STATUS_SUCCESS Образ является допустимым. Это значение имеет значение HRESULT 0x00000000L.

Комментарии

В Windows XP и более поздних версиях загрузчик операционной системы проверяет наличие управляемых модулей, проверяя бит каталога дескриптора COM в заголовке COFF. Бит набора указывает на управляемый модуль. Если загрузчик обнаруживает управляемый модуль, он загружает MsCorEE.dll и вызывает _CorValidateImage, который выполняет следующие действия:

  • Подтверждает, что образ является допустимым управляемым модулем.

  • Изменяет точку входа в изображении на точку входа в среде CLR.

  • Для 64-разрядных версий Windows изменяет образ, который находится в памяти, преобразовав его из pe32 в формат PE32+.

  • Возвращается в загрузчик при загрузке образов управляемого модуля.

Для исполняемых образов загрузчик операционной системы вызывает функцию _CorExeMain независимо от точки входа, указанной в исполняемом файле. Для образов сборки DLL загрузчик вызывает функцию _CorDllMain .

_CorExeMain или _CorDllMain выполняет следующие действия:

  • Инициализирует среду CLR.

  • Находит управляемую точку входа из заголовка CLR сборки.

  • Начинает выполнение.

Загрузчик вызывает функцию _CorImageUnloading при выгрузке образов управляемых модулей. Однако эта функция не выполняет никаких действий; он просто возвращается.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: Cor.h

Библиотека: Включено в качестве ресурса в MsCorEE.dll

версии платформа .NET Framework: доступно с версии 1.0.

См. также раздел