Рейтинг:
1
Sachin Makwana
Спасибо. Это полезно. Как поймать, какой документ печатается (весь файл, а не имя документа)? Вышеописанное решение дает мне имя печатаемого документа, но я не получаю прикрепленный документ или файл.
Jochen Arndt
Глубже я в него не заглядывал. Поэтому я не могу ответить.
Но я предполагаю, что получить имя файла невозможно. Очередь печати содержит данные, которые будут отправлены на принтер после подготовки приложениями. А часто и вовсе нет досье. Примеры еще не сохранены документы, печать веб-страниц или печать отчетов, созданных приложением.
Sachin Makwana
Окей.
Пожалуйста, поделитесь ссылкой, Если вы найдете "как получить данные печати"?.
я могу видеть свойство printStream при отладке выше проекта с помощью PrintingSpoolerAPI, но оно всегда равно null .
Jochen Arndt
Что вы подразумеваете под "Как получить печатные данные"?
Вам нужен доступ к необработанным данным, отправляемым на принтер?
Если да, то почему (данные относятся к конкретному принтеру)?
Sachin Makwana
Я имел в виду печать данных, которые отправляются на принтер для печати.
Jochen Arndt
Вы должны прочитать о том, как работает печать в Windows.
Например, см. http://www.undocprint.org/winspool/spool_files.
Но обратите внимание, что приведенная выше ссылка предназначена для Win 2000/XP, и там были изменения с более новой версией Windows.
Когда принтер использует режим raw, один из файлов катушки уже содержит данные для отправки на принтер. С другими режимами будет дополнительная обработка.