Начало работы с драйвером виртуального принтера - PullRequest
0 голосов
/ 03 февраля 2019

Я знаю, что эта проблема решалась во многих сообщениях, но мне все еще трудно разобраться с этим.

Я хочу создать «Принтер» или Виртуальный принтер, который будет отображаться каквариант, когда пользователь нажимает кнопку Печать или Ctrl-P.Когда используется этот «Принтер», он преобразует документ в PDF и программно сохраняет его в сетевом расположении файлов (без диалога «Сохранить как»), а затем отправляет запросы / команды HTTPS / IP (POST, GET и т. Д.) В API.пользовательской базы данных для импорта PDF в базу данных.

Самый распространенный ответ в сообщениях - использовать пользовательский монитор печати или монитора портов или просто использовать RedMon, например здесь и здесь , и я могу легко заставить "Принтер" отображаться, сделав для него простой INF и универсальный драйвер.И есть несколько ответов об использовании драйвера принтера v4, например здесь .Я не могу понять, как начать работу с драйвером v4, и, похоже, мне все равно придется выяснить, как выполнить преобразование PDF.

Создание PDF было большой проблемой во многих предыдущих публикацияхтакие как здесь , но это стало намного проще с «Microsoft Print to PDF» в Win10, особенно благодаря возможности сделать это программно, как здесь .

УпрощенноЕдинственный код, характерный для моей задачи, очень короткий: блок PrintDocument.Print () и несколько запросов HTTPS / IP.

Является ли мониторинг портов по-прежнему лучшим подходом?Делает ли v4 все это проще или проще?Есть ли другой подход "обертка", чтобы просто получить краткий код, который мне нужен?

Если монитор порта по-прежнему остается ответом, я не думаю, что наш ИТ-отдел захочет установить RedMon.Будем весьма благодарны за любые советы о том, как начать писать специальный / настраиваемый монитор портов для моей задачи.

Заранее благодарю за любые советы.

БОНУС: простое диалоговое окно пользователя с одним текстовым полем для ввода введенного пользователем 8-значного числа также будет очень полезно, если у кого-то есть предложения по этому поводу.

1 Ответ

0 голосов
/ 04 февраля 2019

Вы можете настроить принтер Win2PDF , чтобы сделать это, написав небольшую программу, которая обрабатывает импорт базы данных, а затем настроив Win2PDF для вызова вашей программы после создания PDF-файла.

Чтобы сохранить PDF-файл в сетевой папке без диалогового окна «Сохранить как», вы можете установить значение реестра с именем « PDFDefaultFileName », как описано здесь:

https://www.win2pdf.com/doc/specifyinganoutputfilename.html

На странице документации описывается, как включить отметку даты / времени при необходимости.После того, как файл создан, вы можете настроить Win2PDF для вызова вашей пользовательской программы импорта базы данных, установив значение реестра с именем « Действие по умолчанию после публикации », как описано здесь:

https://www.win2pdf.com/doc/automaticallyexecutinganapp.html

Ваша пользовательская программа импорта базы данных может открыть текстовое поле для введенного пользователем 8-значного числа.

...