Функция AnsiString __fastcall Conver_IntTo_Keyboard_Key_Rus(int VirtualKey) конвертирует вируальный код клавиши полученный из библиотеки в символ русского алфавита верхнего или нижнего регистра, в зависимости от состояния клавиши CAPSLOCK.
Функция AnsiString __fastcallConver_IntTo_Keyboard_Key(intVirtualKey) конвертирует вируальный код клавиши полученный из библиотеки в символ расширенной и цифровой раскладки клавиатуры.
Функция bool __fastcall Write_To_StringGrid (AnsiString FilePatch) располагается на сервере.
bool __fastcall Write_To_StringGrid (AnsiString FilePatch) выполняет следующий действия:
Функция bool __fastcallKeyboard_Mouse_Access_Lock(boolAcess_Keyboard, boolAcess_Mouse) позволяет отключать и включать клавиатуру и манипулятор мышь в системе. Работа этой функции основана на использовании текстового файла в качестве флага, позволяющего проходить или не проходить сообщениям, от устройств ввода, в систему. Вызов происходит с параметрами Acess_Keyboard и Acess_Mouse = true/false. Где true – разрешение доступа, false – запрещение доступа.
Функция тика системного таймера void __fastcallTimer1Timer(TObject *Sender) необходима для корректной работы программы в случае отсутствия сообщений от клавиатуры и манипулятора мышь, что может означать, что конкретная рабочая станция пустует.
void __fastcall Timer1Timer(TObject *Sender) выполняет следующие действия:
1. Проверяет не истекло ли время в течении которого отсутствие сообщений от клавиатуры и мышки разрешено.
2. В случае выполнения этого условия функция посылает обработчику сообщение, которое эмулирует нажатие клавиши Enter с соответствующим префиксом причины – истечение времени. После чего промежуточный буфер в котором храниться незаконченная строка записывается в соответствующую строку таблицы. Затем обработчику посылается специальное сообщение, позволяющее организовать вывод сообщения – комментария в нужной части таблицы.
3. Обновление текущего времени активности клавиатуры и мышки.
Функция int __fastcallStringTimeToInt(AnsiStringTime) используется для преобразования текущего системного времени в значение целого числа. Применяется при выполнении арифметических операций над временем.
При создании формы обработчика должна выполниться функция Keyboard_Mouse_Access_Lock(true, true), для разрешения использования клавиатуры и манипулятора мышь.
В качестве таблицы используется компонент из визуальной библиотеки компонентов – StringGrid.
Модуль URL
Задачей программного модуля URL является сбор всех адресов Internet страничек, которые были просмотрены IE со времени запуска программы. Адреса Internet накапливаются в структуре HeapURL. В этой структуре имеется поле для URL и время фиксации его фиксации.
Основная функция получения URL - bool GetHeapURL(UINT nCmd, int sizeURL,int iParam) содержит три параметра:
· NCmd – идентификатор команды. GW_ALLSIZE – Возвращает текст из EditBox броузера полной длинны. Ограничение на длину накладывается размером буфера в структуре хранения URL, справа ограничено символом пробел. GW_LENGHT - Возвращает текст из EditBox броузера длиныsizeURL или меньше. Ограничение на длину накладывается размером буфера в структуре хранения URL. GW_SIZE – Возвращает текст из EditBox броузера длинны ограниченной символом ‘/’, что характерно для URL адреса. GW_CLEAR – очищает массив списка для создания нового списка (журнала). Параметр iParam =1 возвращает текст в верхнем регистре, iParam =0 возвращает текст в нижнем регистре. Возможно динамическое изменение параметров запроса при получении URL.
· Функция осуществляет поиск окна ввода URL, начиная с основного окна windows. Перелистываются все подчиненные окна первой ступени, в которых по известному иерархическому расположению находится искомый элемент окна. После чего, найденному элементу окна посылается сообщение с запросом содержимого его текста.
· Происходит синтаксический разбор текста совместно с запросами команд, которые регулируют результат выполнения функции.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.