| Предыдущий | Следующий |
| ERROR_PRINTER_ALREADY_EXISTS | ERROR_INVALID_DATATYPE |
ERROR_INVALID_PRINTER_COMMAND
Управление принтером не является каналом произвольных команд. Например, SetPrinter определяет конкретные значения команд для приостановки, возобновления, очистки заданий и установки поддерживаемых данных состояния. Функция также ограничивает аргументы Level и pPrinter при передаче команды.
Оболочка, напрямую передающая Winspool перечисления приложения, объединяющая команду с неправильным уровнем сведений или повторно использующая команду управления заданием, может получить ошибку уровня команды до обращения к устройству.
Зафиксируйте контракт API
- Запишите точную функцию Winspool, числовое значение Command, Level и тип дескриптора объекта.
- Не смешивайте значения PRINTER_CONTROL_* SetPrinter со значениями JOB_CONTROL_* SetJob.
- Проверяйте сочетания аргументов до вызова; когда Command SetPrinter ненулевой, важны требования Level.
- Если уровень совместимости преобразует удалённые команды принтера, сравните преобразованную операцию с MS-RPRN или реализацией сервера, а не повторяйте другую произвольную команду.
Команды Microsoft SetPrinter · Управляющие действия заданий SetJob · Удалённые операции печати MS-RPRN
Нужно найти другой код? Найти другой код состояния или ошибки.
