窗口 – 如何检测非活动用户
发布时间:2020-12-15 10:19:18 所属栏目:大数据 来源:网络整理
导读:如何在Windows应用程序中检测不活动(空闲)用户?当用户在某段时间内没有任何输入(键盘,鼠标)时,我想关闭应用程序。 解决方法 为了跟踪用户的空闲时间,您可以钩住键盘和鼠标活动。但是请注意,安装系统范围的消息挂钩是非常有侵入性的事情,如果可能的话应
如何在Windows应用程序中检测不活动(空闲)用户?当用户在某段时间内没有任何输入(键盘,鼠标)时,我想关闭应用程序。
解决方法
为了跟踪用户的空闲时间,您可以钩住键盘和鼠标活动。但是请注意,安装系统范围的消息挂钩是非常有侵入性的事情,如果可能的话应该避免这种情况,因为它需要将钩子DLL加载到所有进程中。
另一个解决方案是使用 这是一个简单的例子。 SecondsIdle函数返回一秒钟,没有用户活动(在TTimer组件的OnTimer事件中调用)。 ~~~~~~~~~~~~~~~~~~~~~~~~~ function SecondsIdle: DWord; var liInfo: TLastInputInfo; begin liInfo.cbSize := SizeOf(TLastInputInfo) ; GetLastInputInfo(liInfo) ; Result := (GetTickCount - liInfo.dwTime) DIV 1000; end; procedure TForm1.Timer1Timer(Sender: TObject) ; begin Caption := Format('System IDLE last %d seconds',[SecondsIdle]) ; end; http://delphi.about.com/od/adptips2004/a/bltip1104_4.htm (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |