Что означает код NTSTATUS 0xC000012F (STATUS_INVALID_IMAGE_NOT_MZ)?

 
Предыдущий Следующий
STATUS_INVALID_IMAGE_LE_FORMAT STATUS_INVALID_IMAGE_PROTECT

STATUS_INVALID_IMAGE_NOT_MZ

Файл не начинается с допустимого MZ-заголовка PE

Образ Windows PE начинается со структуры IMAGE_DOS_HEADER с сигнатурой MZ. Загрузчик использует её поля, прежде всего e_lfanew, чтобы найти сигнатуру PE и NT-заголовки. Поэтому код сообщает о базовом несовпадении формата, усечении или повреждении до начала обработки импорта или проверки подписи.

Файл может оказаться архивом, сценарием, ELF-бинарником, необработанным образом прошивки, страницей ошибки, загруженной вместо бинарника, или частично записанным исполняемым файлом. Расширение имени скрывает такие случаи.

Что проверить

  • Изучите первые байты и размер файла, затем убедитесь, что e_lfanew указывает внутрь файла на действительную сигнатуру PE.
  • Проверьте журналы передачи и распаковки на усечение, преобразование текстового режима, страницу ошибки прокси или незавершённое обновление.
  • Сравните файл с хешем доверенного пакета до замены или попытки исправления.
  • Рассматривайте недоверенные повреждённые заголовки как вход парсера и проверяйте все смещения до разыменования.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.