C++ C++;键盘/鼠标事件

C++ C++;键盘/鼠标事件,c++,winapi,events,mouse,keypress,C++,Winapi,Events,Mouse,Keypress,我正在开发一个Java应用程序,在这里我必须检测用户的活动/不活动。基本上这就是我计划要做的: 1->程序将有一个计数器/超时,当它达到x秒时,它将更改用户状态,直到他/她再次执行某项操作 2->当用户按下任何键或将鼠标移动到任何位置时,程序将重置计数器 我知道,由于平台/安全的原因,我不能完全控制java应用程序之外的输入设备,但是给出了这些循环,我没有选择使用与Windows API交互的JNI框架开发外部C++程序,并让我对事件进行全面控制。 现在我的问题是:如何知道用户是否通过WinAP

我正在开发一个Java应用程序,在这里我必须检测用户的活动/不活动。基本上这就是我计划要做的:

1->程序将有一个计数器/超时,当它达到x秒时,它将更改用户状态,直到他/她再次执行某项操作

2->当用户按下任何键或将鼠标移动到任何位置时,程序将重置计数器

我知道,由于平台/安全的原因,我不能完全控制java应用程序之外的输入设备,但是给出了这些循环,我没有选择使用与Windows API交互的JNI框架开发外部C++程序,并让我对事件进行全面控制。 现在我的问题是:如何知道用户是否通过WinAPI(windows.h)移动鼠标/按键

为了实现这一目标,我希望您能与我分享任何手册/指南


谢谢。

Java windows支持输入事件。有意思的是,你能告诉我吗?你的GUI使用什么?我使用Swing lib作为GUI,但关键是Java在应用程序未聚焦时不注册事件,顺便说一句,它将是一个没有GUI的隐藏程序,我需要不断地在全球范围内注册这些事件。如果你的意思是它甚至不能捕捉鼠标在你窗口上的移动,那就太愚蠢了。从全球来看,是的,你可能想要一个钩子。但是,如果是系统范围的活动,则有一个名为
GetLastInputInfo
IIRC的函数。