Есть ли способ перехватить задания на печать на локальном компьютере с Windows XP?
Предпочтительно использовать язык сценариев, такой как Perl или Python, но если мне нужно идти по скомпилированному маршруту, пусть будет так.
По сути, я хочу сделать дополнение к системе слияния почты моей компании. В настоящее время используемое нами программное обеспечение имеет довольно ограниченный выбор полей слияния, которые оно экспортирует, но если бы мы могли каким-то образом включить результаты запросов к базе данных в письма, мы могли бы достичь гораздо большего (и, к сожалению, Word не обеспечивает достаточной гибкости при запросы к базе данных для достижения этой цели). Система, которую мы используем, автоматически отправляет свои письма на принтер по умолчанию (это одноранговый принтер, а не сервер печати). Я хотел бы создать программу, которая могла бы выступить в качестве посредника для этого. В идеале он будет определять, когда задание на печать запускается, захватывать отправленный документ, открывать его, вставлять дополнительные данные из собственных запросов, а затем отправлять новую версию на принтер.
У меня два вопроса
- Возможно ли это вообще? Если да, то с чего мне начать?
- Это возможно для одного человека, чтобы завершить в разумные сроки? Имейте в виду, я не программист по профессии, я тип sysadmin человек =P
2 ответа
Честно говоря, это невероятно трудный путь. Возможно, попробуйте создать виртуальный принтер, который обрабатывает данные и перенаправляет их на настоящий принтер. Посмотрим, смогу ли я найти что-нибудь для вас.
Если вы используете Word, я думаю, вам будет гораздо проще внедрить вашу улучшенную систему слияния в Visual Basic. Я подозреваю, что было бы намного труднее перехватить работу на этом уровне. Если вы предпочитаете Perl или Python VB, вы можете даже написать сценарии.py/.pl для запуска запросов и создания сценариев.vbs. Вы также можете использовать OpenOffice, который может быть написан на Python.