| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Бездействие пользователя |
| Автор: Mihhail 17.10.2007, 21:23 |
| Вопрос вот в чём - необходимо отследить время бездействия пользователя. Сама ОС постоянно отслеживает активность пользователя (мышь, клавиатура и др.), например для запуска заставки. Как добраться до этой информации, т.е. узнать время последнего действия пользователя у самой системы. Не охота усложнять себе жизнь и делать такое слежение вручную. Или есть простые способы сделать это?? Примерный порядок действий: В некоторый момент времени проверяем время бездействия, если оно больше нужного выполняем задачу, если меньше делаем таймер на разницу, ждём пока он сработает и ещё раз проверяем последнее действие - повторяем алгоритм. |
| Автор: dumb 17.10.2007, 22:34 |
| http://msdn2.microsoft.com/en-us/library/ms646302.aspx |
| Автор: Mihhail 18.10.2007, 11:50 |
| dumb, функция та что надо, но доступна она только для Windows 2000. И похоже что в других ОС эквивалента нет. :( Или просто они не документированы!? Builder 6 не знает такой функции... |
| Автор: dumb 18.10.2007, 15:09 | ||||
| не только в w2k, а начиная с w2k - т.е. все выпущенные после нее имеют эту функцию. если же нужна совместимость с win9x, то через хуки - WH_MOUSE/WH_KEYBOARD... знает: winuser.h
windows.h
|
| Автор: Mihhail 18.10.2007, 16:15 | ||||
Да действительно всё работает:
Меня немного вот это с толку сбило:
Теперь всё понятно, спасибо dumb!.... |