Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Программирование
>
C/C++
>
WinAPI & Visual C++
(Модератор:
Вад
) > Тема:
Мышиный шпион )))
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Мышиный шпион ))) (Прочитано 7798 раз)
0 Пользователей и 1 Гость смотрят эту тему.
acc15
Гость
Мышиный шпион )))
«
:
13-11-2005 23:01 »
Короче требуется :
Программа следит за мышью и пишет каждые её действия в файл.
как мне думается это хук... но... должен стоять считающий таймер который будет засекать интервал времени между вызовами хуковой процедуры, чтобы в последующем можно было "проиграть" ранее сделанные действия... вот как мне сделать этот таймер? который считает промежутки времени???
Записан
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
Re: Мышиный шпион )))
«
Ответ #1 :
14-11-2005 14:17 »
А зачем тебе Таймер. Это все можно реализовать при помоши вызовов функций времени. В начале иницилизации просто ставиш метку времени. Когда хук сработал, вызываеш функцию времени еше раз, делаеш разницу. Вот тебе и время между двумя действиями.
Смотри функции:
GetSystemTime
- Функция выдает системное время.
GetTickCount
- Функция выдает время работы Винды после запуска в милисекундах. Я бы выбрал эту функцию. НО у функции есть одно но. Как написано в MSDN через 49,7 дней число будет сброшено в нуль.
Записан
Не будите спашяго дракона.
Джаффар (Коша)
acc15
Гость
Re: Мышиный шпион )))
«
Ответ #2 :
14-11-2005 16:28 »
GetTickCount... то шо нада... переполнение можно обойти... спасибо
«
Последнее редактирование: 14-11-2005 16:37 от acc15
»
Записан
sandyru
Гость
Re: Мышиный шпион )))
«
Ответ #3 :
15-11-2005 14:19 »
typedef struct tagMSG
{
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
} MSG;
time — время , когда сообщение было помещено в очередь сообщений
Записан
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
Re: Мышиный шпион )))
«
Ответ #4 :
15-11-2005 14:58 »
sandyru
Тут такая проблема. А вообше сообшение в чью очередь сообшений помешено. И помешено ли вообше. Так как Сообшение так такового не было у приложения. Просто сработал хук. Функция обратного вызова Хука
Код:
LRESULT CALLBACK HookProc(
int nCode,
WPARAM wParam,
LPARAM lParam)
Как видиш, тут нет информации о времени. И делать вызов функции GetMessageTime тоже бесмысленно.
Записан
Не будите спашяго дракона.
Джаффар (Коша)
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Программирование
>
C/C++
>
WinAPI & Visual C++
(Модератор:
Вад
) > Тема:
Мышиный шпион )))
Загружается...