Ответ 1
Здесь статья о CodeProject, которая должна вас запустить.
Я хочу определить, находится ли система в режиме ожидания, т.е. пользователь не использует систему. Я хочу, чтобы он, как и Windows Live Messenger, автоматически менялся, когда я оставляю компьютер на время как 3 минуты, я хочу установить это время в коде.
Я работаю над WPF в среде С#, используя визуальную студию 2008 и 2010, поэтому, если это способ, который работает на обоих, это будет здорово.
Здесь статья о CodeProject, которая должна вас запустить.
Эта ссылка также предоставляет компонент WinForms для задачи:
http://www.codeproject.com/KB/miscctrl/Application_Idle.aspx
Я дал ответ для обнаружения бездействия и активности в WPF, и вам может быть интересно:
Windows действительно предоставляет некоторые API для этого, хотя они не надежны для нескольких сеансов или что-то в этом роде.
То, что я использовал, является привязкой к WW_MOUSE_LL
с помощью SetWindowsHookEx();
То, что в C. Должно быть, очень похоже на С#.
Основываясь всякий раз, когда пользователь что-то делает с помощью мыши, таймер снова начинается с 0, а если таймер достигает какой-то ценности, вы что-то делаете (система act-if бездействует).
Вы также можете подключить ее с помощью клавиатуры, если пользователь просто набрал и разделит таймер между двумя потоками. Это прекрасно работает для меня.