На этом сайте есть аналогичная разработка, но так как не смог ее запустить более чем на 1 компе, написал свою.
Клиент UsersLog.exe запускается на рабочих местах пользователей. Постоянно отслеживает активное окно Windows, его заголовок и имя процесса. Все это пишется в центральную базу данных sql. Конфигурация на 1С анализирует эти данные и строит любые отчеты по пользователям. Вплоть до конкретного заголовка любого окна. В случае отключения от центральной базы (ноутбук уехал в командировку) все данные пишутся локально, а при подключении к центральной базе - перемещаются в неё. Используются только официальные и документированные функции Windows.
Клиент
- В пустой каталог кладем UsersLog.exe и UsersLog.ini и прописываем в автозагрузку
- Блокнотом открываем UsersLog.ini и меняем если нужно настройки
[MAIN]
HideWindow=0
; Скрывать окно 1-скрыть
SysTrayIcon=1
; показать иконку
ENABLELOD=0
; вести логи
BYPASS=
; имена компов на которых не будет работать
[TIMER]
Scan=1
; интервал сканирования
TimeOut=300
; время бездействия для учета простоя
UpdateBD=600
; интервал обновления БД
Connect=3600
; интервал проверки соединения с сервером при отсутствии соединения
[CONNECT]
; строка подключения
CONNECTSTRING=Provider=SQLOLEDB.1;Password=ПАРОЛЬ;Persist Security Info=True;User ID=ЮЗЕР;Initial Catalog=ИМЯБАЗЫ;Data Source=СЕРВЕР;Use Procedure for Prepare=1;Use Encryption for Data=False;Tag with column collation when possible=False
TABLENAME=dbo.UserLog
; имя таблицы
параметр "BYPASS" - перечисляем имена компов через пробел на которых не будет запускаться клиент(нужно для того чтоб исключить например сервер )
1С
поставляемый отчет для версии 1с 7.7 позволяет формировать отчет в любом разрезе
Для работы отчета необходима компонента ReportEx.dl .
Клиент UsersLog.exe
- Все настройки клиента хранятся в файле UsersLog.ini
- Файл настроек UsersLog.ini должен находиться рядом с UsersLog.exe и иметь то же название, что и клиентское приложение (в случае переименования exe, нужно переименовать и ini файл)
- Файл настроек UsersLog.ini редактируется обычным блокнотом
- Значения из файла настроек берутся клиентом при запуске
- При нажатии кнопки проверить - с случае успешного соединения файл настроек перезаписывается
- Клиент запускается под именем пользователя, без каких-либо особенных прав
- Клиент считывает заголовки окон, имена приложений и т.д. при помощи документированных и легальных API функций
- Клиент с одним и тем же именем отслеживает себя и не может быть запущен дважды (если нужно, то придется менять имя исполняемому файлу)
- Для работы клиента на sql база данных, прописанная в настройках должна быть создана, таблицы создавать не нужно, клиент сделает это сам
- Текущая версия программы рассчитана на любую фирму и не ограничена ничем :)