在Win32环境中,您可以在Microsoft documentation中使用GetLastInputInfo API调用。基本上,此方法返回与用户上次提供输入时相对应的最后一个刻度,并且您必须将其与当前刻度进行比较以确定多长时间之前。
Xavi23cr在codeproject处有一个很好的C#示例。
有关其他环境的建议吗?
答案 0 :(得分:3)
对于Linux,我知道Pidgin必须确定空闲时间,以便在一段时间后将您的状态更改为远离。您可以打开源代码,看看是否可以找到执行所需操作的代码。
答案 1 :(得分:1)
你似乎在Nathan回答了你自己的问题;-) “GetLastInputInfo”是要走的路。
一个技巧是,如果您的应用程序在桌面上运行,并且用户连接到虚拟机,则GetLastInputInfo将不报告任何活动(因为主机上没有活动)。
这可能与您想要的行为有所不同,具体取决于您希望如何应用用户输入。