Добрый день!
Есть три компа в сети, к одному из них по USB подключен расшаренный принтер
остальные два компа печатают на этот расшареный принтер.
Я так понимаю что печать с любого компа будет отображаться в очереди печати компа к которому подключен принтер.
Как поймать это окно (кратковременно отображается в виде значка принтера возле часов)?
Или может есть другие варианты узнать кто какой документ отправил на печать и во сколько?
Захват окна очереди печати
- Sys-liar
- Пассажир
- Сообщения: 10
- Зарегистрирован: Чт июн 30, 2011 6:24 pm
- Благодарил (а): 1 раз
- Поблагодарили: 0
Re: Захват окна очереди печати
Всё оказывается проще!
Но пока печать по сети на шару не проверял.
Когда юзверь нажимает кнопку печать, создаются файлы которые сбрасываются в папку C:\Windows\System32\spool\PRINTERS
*.SHD и *.SPL
Файл *.SHD содержит в себе имя принтера, количество страниц (в шестнадцатеричном виде, строка 50), время, владельца.
Придумал логику:
xStarter при запуске останавливает службу печати
мониторит C:\Windows\System32\spool\PRINTERS на наличие файлов
извлекает из *.SHD необходимую инфу
создаёт файл с именем принтера
записывает в файл с именем принтера необходимую инфу
отправляет файл на сервер где будет проводиться обобщение
Запускает службу печати
мониторит C:\Windows\System32\spool\PRINTERS на наличие файлов
как только папка C:\Windows\System32\spool\PRINTERS становиться пустой (очередь печати освобождаясь удаляет из этой папки распечатанные файлы) опять останавливает службу печати.
и опять мониторит C:\Windows\System32\spool\PRINTERS на наличие файлов
Сейчас пока проверяю все ли основные проги при печати кидают туда файлы.
Но пока печать по сети на шару не проверял.
Когда юзверь нажимает кнопку печать, создаются файлы которые сбрасываются в папку C:\Windows\System32\spool\PRINTERS
*.SHD и *.SPL
Файл *.SHD содержит в себе имя принтера, количество страниц (в шестнадцатеричном виде, строка 50), время, владельца.
Придумал логику:
xStarter при запуске останавливает службу печати
мониторит C:\Windows\System32\spool\PRINTERS на наличие файлов
извлекает из *.SHD необходимую инфу
создаёт файл с именем принтера
записывает в файл с именем принтера необходимую инфу
отправляет файл на сервер где будет проводиться обобщение
Запускает службу печати
мониторит C:\Windows\System32\spool\PRINTERS на наличие файлов
как только папка C:\Windows\System32\spool\PRINTERS становиться пустой (очередь печати освобождаясь удаляет из этой папки распечатанные файлы) опять останавливает службу печати.
и опять мониторит C:\Windows\System32\spool\PRINTERS на наличие файлов
Сейчас пока проверяю все ли основные проги при печати кидают туда файлы.