Обнаружение времени простоя формы выигрыша для выполнения выхода из системы
Я надеюсь, что это правильное место для этого вопроса.
Мне нужно выйти из приложения Win Form после того, как пользователь не будет активен в течение [300] секунд. Я видел много решений, включая обнаружение состояния простоя, последнюю активность и этот действительно сложный компонент здесь - Обнаружение времени простоя формы выигрыша для выполнения выхода из системы так же как Определение От Безделья
Во второй статье, однако, был комментарий Сара Кулу это показало очень простой способ сделать то же самое. Это так просто, что беспокоит меня. Я протестировал его в приложении MDI. Он отлично работает, когда есть/нет активность на форме и игнорирует активность вне нее. Это слишком просто. Может ли кто-нибудь предложить какие-либо проблемы с этим?
DateTime dtLastIdleTime = DateTime.Now; protected override void WndProc(ref Message m) { base.WndProc(ref m); dtLastIdleTime = DateTime.Now; }
private void timer1_Tick(object sender, EventArgs e) { appendToFile("\r\nTimer Says:" + DateTime.Now.ToLocalTime() + "..." + dtLastIdleTime.ToLocalTime() + "..."); }
Что я уже пробовал:
Я попробовал это, и это сработало чудесно. Если кто-то может сказать мне, в чем проблема, я должен буду попробовать один из других более сложных методов... Как это?