Как сделать триггер, чтобы открыть приложение, когда задание на печать проходит через ваш драйвер? [C ++] [WDK] - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь выяснить, как добиться функциональности, аналогичной той, которая выполняется с помощью драйвера принтера Microsoft OneNote «Отправить в OneNote» в Windows. В основном, как это работает, вы создаете документ и распечатываете его через очередь печати «Отправить в OneNote 20xx». Как только задание будет помещено в буфер, Microsoft OneNote автоматически откроет и предложит пользователю указать, где он хочет сохранить распечатанный документ в OneNote.

Также важно указать, что порт, используемый очередью OneNote, имеет значение «nul», поэтому он не похож на очередь «печати в файл», как если бы для порта был задан «ФАЙЛ» или определенное местоположение на ПК. как пользовательский локальный порт.

Я также нашел ссылку на Виртуальные очереди в INF-файле драйвера (PrintFax.Printer.Virtual) , который используется драйвером Send to OneNote, но фактической информации о том, как получить дальнейший доступ, мало. это поведение в вашем коде.

Я просмотрел много документации для драйверов принтеров V4, но кажется, что многие вещи пропущены или необъяснены, и это один из них. Если у кого-то есть какая-либо информация, которая может быть полезна, она будет очень признательна.

Редактировать для пояснения: так что будьте ясны, мой вопрос был бы, какой механизм (ы) я могу использовать для репликации поведения, демонстрируемого всей очередью печати "Send to OneNote", когда отправка задания через очередь с моим драйвером открывает внешнее приложение и позволяет передавать на него данные печати, а не на физический принтер / факс / и т. д. машина

...