Справка




Серверная часть
Вся настройка сводиться к тому что нужно в форме настройки (файл\настройки) указать нужные параметры для работы клиентской и серверной части.

мониторинг принтера

Если путь к логам указан правильно, то после нажатие на кнопку загрузить данные в базу все логи будут загружены в таблицу. Под таблицей будут отображены основные статистические данные
В поле комментарий к принтеру можно подписать дополнительную информацию к принтеру.
Кнопка Произошла замена картриджа означает, замену картриджа и фиксации этого в базе данных


Клиентская часть

ПРОСТАЯ УСТАНОВКА клиентской части (там где нужно мониторить принтер)
1) В файле print_counter.ini  нужно указать необходимые настройки (как минимум адрес фтп сервера, пароль логин и порт), остальные настройкки будут браться с него в автоматическом режиме.
2) запустить файл install_print_counter.exe на компьютере где должна отслеживаться печать (под администратором), нажать кнопку установить
контроль принтера

после должно выскочить сообщение о установке службы print_counter.
3) после перезагрузки компьютера программа начнет работать.


УСТАНОВКА ДЛЯ ПРОДВИНУТЫХ
1) Сохранить файл print_counter.ini и  print_counter.exe(можно переименовать по своему усмотрению) и  ftp.exe в нужную вам папку (обязательно эти файлы должны быть рядом).
2) настроить файл print_counter.ini 3) Установить службу print_count на компьютер.
через консоль вызвать print_counter.exe -install -silent
ключи -install -silent означают, установить скрытно. (при повторной установки выдается ошибка).
4) запустить службу можно самостоятельно (администрирование\службы\print_counter ), или она автоматически запуститься после перезагрузки компьютера.
5) Далее служба при удачном запуске обнаруживает принтеры установленные на компьютере и создает файл all_print.txt. После этого начинает следит за очередью печати и вести логи.

Как поднять FTP сервер
Я использую программу FileZilla_Server.
Что бы настроить нужно сделать следущее
1) установить FileZilla_Server.
контроль принтера
2) зайти в меню Edit\Settings.
контроль принтера
3) В строке Listen on these ports указать номер свободного порта, Нажимаем ОК.
контроль принтера
4) зайти в меню Edit\Users.
контроль принтера
5) В разделе General нажимаем кнопку Add и пишим имя пользователя,Нажимаем ОК.
Напротив слово Password пишим пароль.
контроль принтера
6) В разделе Shared folders добовляем папку куда будут сохраняться файлы отчета, расстовляем галочки как на рисунке, Нажимаем Ок
контроль принтера
7) Вы подняли Ftp сервер, теперь добавьте адрес ftp сервера, порт, логин, пароль в print_counter.ini.
8) В серверной части укажите папку с логами которую вы добавили в Ftp сервер.


Пояснение файла настроек Print_counter.ini
[dir_log]
параметр log означает в какую папку должны сохраняться файлы (нужно указывать локальный компьютер)
log=C:\Program Files\bak\print_counter\

параметр yes означает что логи будут записываться согласно текущей дате в формате print_log дата.txt, параметр no означает что все логи будут писаться в один файл print_log.txt
log name files date=yes

Копировать файлы которые были отправлены на печать
Print the file=yes

Удалять старые папки с ранее печатаемыми файлами (цифра 5 означает удалять старее пяти дней)
del Print the file=5

Очищать информацию о ранее распечатанных документов в памяти если удален файл лога
clear_log=yes

[FTP]
параметр true означает отправку данных по ftp
true=yes

параметр server означает адрес ftp сервера на который будут отправляться логи
server=10.33.0.99

параметры login, password,port означают логин, пароль и порт на подключение к ftp серверу
login=print
password=print
port=123

параметр time означает с каким интервалом отправлять данные на сервер (указывается в минутах)
time=60
[false_monitoring]
здесь нужно причислить принтеры за которыми не нужно следить через запятую.
false_printer=Xerox Phaser 3117,HP DeskJet 600

работать только с локальными пользователями yes, следить за всеми пользователями на данном компьютере no.
monitoring_loc_pc=yes
На сервере ftp должен быть создан пользователь с паролем и разрешением на запись файлов и папок.



Пример лога одного компьютера.
18.06.2015 Дата печати
12:34:04 Время печати
HP Designjet 500 plus 24 Имя принтера
\\MOPEARTOR Имя компьютера
operatorm Имя пользователя
*name_doc *KOMPAS — Л1-15.cdw Имя файла 1 Количество копий
———— 18.06.2015
12:42:54
HP Designjet 500 plus 24
\\MOPEARTOR
operatorm
*name_doc *KOMPAS — Задание на печать 123518
4
————
18.06.2015
12:43:36
HP LaserJet P2015 Series PCL 5
\\MOPEARTOR
operatorm
*name_doc *Microsoft Word — лист задания
18

PS: замечено если файл spoolsv.exe каждую секунду увеличивается в оперативной памяти то это означает что в одном из принтеров (принтеры и факсы) очередь печати не пуста. Скорей всего или в принтере кончилась бумага а печать еще не закончилась, или была попытка печати на принтере со статусом "не подключен".
В первом случае нужно положить бумагу, во втором очистить очередь печати и проверить статус принтера он должен быть в состояние "подключен"


Если служба не может перехватить данные отправляемые на печать

Что обычно помогает
1) Заметил некоторую зависимость со службой "удаленный вызов процедур rpc" на некоторых компах приходилось включать ее для правильной работы.
2) на других компах пришлось включить службу "брадмауэр windows" и приказать ей ничего не блокировать.
3) так же помогло на некоторых компьютерах на работе "включить общий доступ к файлам и принтерам" (Панель управления\Все элементы панели управления\Центр управления сетями и общим доступом\Дополнительные параметры общего доступа).
4) Часто в windows 7 проблема решалась установкой галочки в свойствах принтер\доступ\ «общий доступ к данному принтеру»
5) Бывали случае удачного перехвата отправленных данных на печать, но не возможностью сохранить в файл из за длинного имени принтера (пример: Hewlett-Packard HP LaserJet 1022), проблема решалась сокращением количество символов в название принтера.