【问题标题】:C# Detect if user uses the computer right now [duplicate]C#检测用户是否现在使用计算机[重复]
【发布时间】:2012-08-17 00:09:01
【问题描述】:

可能重复:
C# - Detect time of last user interaction with the OS

我正在用VS 2010/C#构建一个Windows Form软件,我想在用户不使用电脑的时候每天更新软件。

谁能建议我如何检测用户现在是否使用计算机? 我试图检查用户是否在最后 10 分钟内单击键盘或移动鼠标,但问题是如果他看电影并且他没有移动任何东西.. 我真的想要任何建议如何检查计算机是否打开并且用户不使用它..

谢谢大家 祝你有美好的一天

【问题讨论】:

  • 我认为您的问题是定义“使用”的含义。
  • 亚当,这只是解决方案的一半,特别不适用于他们提到的情况。
  • 我认为没有办法 100% 检测到它。
  • 允许用户选择适合他们的预定时间。 那么如果当时没有用户输入(通过BOOL WINAPI GetLastInputInfo())然后继续进行更新,因为他们已经签署了它。

标签: c# detect


【解决方案1】:

你不需要把它变成一个更大的问题。我会保持简单。 第一次更新可以在 Windows 启动时触发。您可以在 Windows 服务中打包更新软件并将启动类型设置为自动。 定期更新(当机器运行时)可以在用户不工作的时间完成,比如凌晨 2:00 ......你应该选择最适合你的时间。替代方案是监控机器 CPU,但正如我所说,我会保持简单。

【讨论】:

    【解决方案2】:

    我在链接http://www.blackwasp.co.uk/InactivityDetection.aspx找到了很好的解决方案+演示

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-14
      • 2011-07-28
      • 1970-01-01
      • 2013-06-22
      相关资源
      最近更新 更多