2010-11-21 2 views
1

Я хочу отслеживать задания печати области области применения через отдельную программу с использованием API диспетчера очереди Windows, но можно выбрать только имя задания печати. Как получить исходный файл с полным путем.Как получить исходный полный путь к файлу, который был напечатан с помощью Spooler API

ответ

3

Если вы ищете исходный путь к документу (например, местоположение документа Word, который вы только что напечатали), диспетчер очереди не сможет сказать вам об этом.

Буфер обычно принимает файлы через пути GDI или XPS. Приложение, которое выполняет печать, эффективно посылает буферисту ряд графических команд (через соответствующий драйвер устройства), которые служба спулера будет кэшировать во временный файл перед отправкой на принтер. Это означает, что сам спулер не знает ничего о исходном исходном файле или где он находится.

Если вам интересно, как спулер получает имя документа, это делается через вызов StartDoc, который пройдет в структуре DOC_INFO_x. Это касается всей информации, которую получает спулер в отношении самого исходного документа.

+0

Спасибо. Итак, я думаю, что нет никакого способа получить это. – Hugo

+0

Содержит ли структура doc_info_x данные, которые будут напечатаны? – Aitizazk

Смежные вопросы