"Операция не поддерживается" и "Выбранный принтер недействителен" ошибки при печати

Надеюсь, кто-нибудь сможет помочь. В моем приложении Delphi 7 небольшой процент пользователей сообщает об ошибках при печати, и я'пытаюсь решить эту проблему с последним из них. Я немного ограничен в тестировании (так как пользователь находится физически далеко и мы решаем этот вопрос по электронной почте), но я получаю некоторую дополнительную информацию из EurekaLog.

В любом случае, первая ошибка, которую он получил, это "Operation not supported on selected printer", в этой строке кода:

Printer.Orientation := AOrientation;

Поэтому я предположил, что его принтер не поддерживает ориентацию (я никогда не слышал об этом, но думаю, что это возможно) и попробовал без этой строки кода. Но теперь он получает "Printer selected is not valid" в этой строке:

Result := Printer.PageWidth / GetDeviceCaps(Printer.Handle, LOGPIXELSX);

Насколько я знаю, принтер выбран правильно (это Canon Pixma iP1500, но у других пользователей другие модели, струйные или лазерные), и он уже пытался обновить драйвера. ОС тоже разная - от XP до Vista SP1).

Я предложил ему попробовать с другим принтером, но что бы он ни ответил, я не знаю, где искать дальше. Поиск в Google не дал никаких полезных результатов (по крайней мере, для меня). Есть ли у кого-нибудь идеи?

Заранее спасибо!

Это не прямое решение, но оно может помочь решить проблему. Первое, что я делаю при возникновении подобной проблемы, это узнаю точную версию драйвера у клиента, а затем загружаю драйвер и устанавливаю его на свой ПК, используя LPT1. Затем я могу печатать на нем для тестирования и решать любые проблемы с драйвером. Конечно, я не могу печатать, но обычно это не проблема. Использование виртуальной машины тоже очень помогает.

Комментарии (1)

Это не решение, но совет для уменьшения количества ошибок: Установите (или попросите пользователя установить) виртуальный принтер в этой системе и попробуйте печатать на нем. Бесплатный (как в смысле пива, так и в смысле свободы) виртуальный PDF-принтер поставляется с отличным PDFCreator. Он определенно поддерживает ориентацию страницы. Это даст вам известную хорошую основу для тестирования.

Комментарии (3)

Вы говорите, что о проблемах сообщает небольшой процент пользователей. Есть ли у вас представление о том, в чем разница между этими и остальными пользователями?

Подумайте об этом:

  • используемые принтеры
  • драйверы принтеров (версия)
  • используемая ОС, включая исправления и обновления (не забудьте про обновления IE)
  • версия вашего программного обеспечения
  • другое установленное программное обеспечение

Есть ли у пользователей проблемы с печатью в других приложениях?

Будет очень полезно, если вы сможете воспроизвести проблему.

Комментарии (2)