如何检测用户是否在桌面C#Winforms上

时间:2018-12-31 08:24:13

标签: c# winforms

我当时正在制作一个更改桌面背景的程序,但是当用户不在桌面上时就不需要这样做。

我想知道是否有一种方法可以检测用户是否在桌面上。

我还认为一种替代方法是检查用户是否在其他任何进程上,但是我也不知道该怎么做。

(如有必要,我会很乐意提供我的代码)

很抱歉发布如此广泛的问题,但我希望有办法做到这一点。

感谢任何可以提供帮助的人!

1 个答案:

答案 0 :(得分:1)

如果要在空闲状态下检查应用程序,则必须执行以下操作: 1)将计时器控件添加到您的应用程序。 2)订阅mouseover和keydown事件-当它们触发时,重置计时器。 3)当计时器启动时(例如,在x时间内没有移动鼠标并且没有按下键),请编写您的逻辑。

如果要检查桌面的空闲状态,则以下参考资料将对您有用: 1):Detecting that the user is away from the PC with .NET  2):Detecting that the user is away from the PC with .NET 3)http://www.codeproject.com/KB/cs/ApplicationIdle.aspx 4)http://msdn.microsoft.com/en-us/library/system.windows.forms.application.idle.aspx 5)http://ellisweb.net/2008/02/detecting-application-idle-state-in-windows-forms/