Что означает код ошибки Windows 1903 (ERROR_INVALID_FORM_SIZE)?

 
Предыдущий Следующий
ERROR_INVALID_FORM_NAME ERROR_ALREADY_WAITING

ERROR_INVALID_FORM_SIZE

Что означает ERROR_INVALID_FORM_SIZE

ERROR_INVALID_FORM_SIZE означает, что Print Spooler получил недопустимые размеры формы печати. Обычно проблема находится в FORM_INFO_1: физический размер страницы, печатная область либо их единицы измерения не согласованы.

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

  • Size.cx/cy и ImageableArea: прямоугольник должен находиться внутри физической страницы.
  • Единицы Win32 printing API — тысячные доли миллиметра, а не pixels, points или inches.
  • Отсутствие overflow при преобразовании пользовательских размеров в целые значения.

Практический пример

Ширина 4 inches соответствует 101600 единицам, а не 4000. Ошибка такого преобразования создаёт почти нулевую форму и приводит к отказу AddForm. Храните исходную engineering unit отдельно, выполняйте пересчёт через 64-bit arithmetic и валидируйте печатную область до обращения к spooler.

Технические ссылки


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