Я завершаю создание веб-службы, которая создает и распечатывает XPS-документы, отправляя их в различные очереди печати на разных серверах печати. Веб-сервис работает в 2 режимах в зависимости от развертывания сайта. Первый использует учетную запись удостоверения пула приложений в качестве пользователя печати, второй режим использует олицетворение пользователя для принтеров типа «следуй за мной», так что пользователь регистрируется для задания печати. Это все работает нормально.
Мне нужно ориентироваться на определенные лотки в очередях на печать и устанавливать различные другие параметры для каждого задания, поэтому я сгенерировал билеты на печать, добавив пространство имен лотков в xml, и это также работает.
Меня беспокоит это (и именно здесь мне нужно немного подержать руку), потому что я делаю всю эту потоковую серверную часть STA, скажем, Боб работает, пока Боб печатает 200 документов микса (A4, A5, конверт), и билеты выключаются скажем, двусторонняя печать на принтере, и моя учетная запись удостоверения пула приложений работает, скажем, 20 потоков печати с несколькими документами из разных целевых лотков с различными параметрами одновременно, у меня возникнут какие-либо проблемы или я собираюсь взломать настройки очереди принтера по умолчанию?
Согласно MS, MergeAndValidatePrintTicket может быть ограничен на разных уровнях (я соглашусь на уровне работы), но мне просто интересно, может ли кто-нибудь, имеющий опыт работы с этим сценарием, подтвердить это как истину и есть ли какие-либо ошибки, потому что вся эта печать .Net маларки, кажется, пронизан ими.
Маленький совет для тех, кто этим занимается. Если ваши целевые принтеры просты, скажем, только с 3 лотками разных размеров, просто установите размер носителя (ISOA4 или любой другой) в билете и установите входной лоток на неизвестный, и принтер обработает его. К сожалению, принтеры, на которые я ориентируюсь, имеют около 7 лотков, поэтому мне нужно выбрать конкретный лоток.
Спасибо за чтение.