Что означает код NTSTATUS 0xC000001F (STATUS_INVALID_VIEW_SIZE)?

 
Предыдущий Следующий
STATUS_INVALID_LOCK_SEQUENCE STATUS_INVALID_FILE_FOR_SECTION

STATUS_INVALID_VIEW_SIZE

Представление не помещается внутри секции

Секция имеет максимальный размер, заданный при создании. Каждое представление выбирает смещение и длину внутри этого объекта. Округлённое смещение и запрошенная длина не должны выходить за секцию, а правила нулевого размера зависят от API отображения и оставшейся части файла.

Выполняйте расчёты 64-разрядными значениями и проверяйте сумму смещения и длины до вызова. Размер, выглядящий допустимым до выравнивания, может выйти за секцию после округления смещения вниз до гранулярности выделения и добавления префиксной дельты. Также повторно проверьте размер базового файла, если другой компонент способен его усечь.

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

  • Запишите максимальный размер секции, размер файла, смещение представления, запрошенную длину и дельту выравнивания.
  • Выявляйте целочисленное переполнение при сложении смещения и длины.
  • Убедитесь, что базовый файл не был усечён или заменён между созданием секции и отображением.

Ссылки


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