9

Win32环境中,您可以使用Microsoft 文档中的GetLastInputInfo API调用。基本上,此方法返回与用户上次提供输入的时间相对应的最后一个刻度,您必须将其与当前刻度进行比较以确定那是多长时间以前。

Xavi23cr 在codeproject有一个很好的 C#示例。

对其他环境有什么建议吗?

4

2 回答 2

3

至于 Linux,我知道 Pidgin 必须确定空闲时间才能在一定时间后将您的状态更改为离开。您可能会打开源代码并查看是否可以找到执行所需操作的代码。

于 2008-08-05T19:14:47.560 回答
1

你似乎已经回答了你自己的问题 Nathan ;-) “GetLastInputInfo” 是要走的路。

一个技巧是,如果您的应用程序在桌面上运行,并且用户连接到虚拟机,则 GetLastInputInfo 将报告没有活动(因为主机上没有活动)。

这可能与您想要的行为不同,具体取决于您希望如何应用用户输入。

于 2008-08-06T01:58:18.353 回答