Написанная мною программа используется для отправки отгрузочных этикеток на принтер этикеток - или, точнее, на пять принтеров, каждый на отдельном драйвере, который я настроил. Пропускная способность составляет один раз в три секунды для каждого принтера, поэтому появляется множество окон с надписью «Печать - Страница 1 документа» - иногда для всех пяти принтеров одновременно - и мы планируем расширить программу до 10 принтеров. , Есть ли способ настроить драйверы, чтобы не показывать это окно? Программа и драйверы находятся на компьютере под управлением Windows Server 2012 R2. Драйвер предназначен для принтеров InterMec px4i, и я использую System.Рисунок.Печать под C # .NET 4.0.

http://i.stack.imgur.com/robgy.jpg

1 ответ1

0

Оказывается, именно контроллер печати по умолчанию сам вызывает окно. Система.Рисунок.Печать дает всем новым PrintDocuments контроллер печати по умолчанию. При настройке страницы для печати моя программа выполняет следующие инструкции:

    PrintDocument pd = new PrintDocument();
    pd.PrinterSettings.PrinterName = PrinterName;
    ...

Чтобы решить эту проблему, я дал ему новый контроллер печати с помощью конструктора по умолчанию:

    pd.PrintController = new StandardPrintController();

Теперь нет окон «Печать ...», и это также заметно повысило производительность моей программы. Я надеюсь, что это поможет всем, кто столкнулся с этой проблемой, но, вероятно, его следует перенести в StackOverflow, так как это проблема программирования, а не проблема Windows.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .