1.BOOL GetLastInputInfo(PLASTINPUTINFO plii);
获取系统中“最后一次用户输入事件”的时间戳,“用户输入”包括:
鼠标移动
鼠标点击
键盘按键
typedef struct tagLASTINPUTINFO { UINT cbSize; // 结构体大小,必须填写 DWORD dwTime; // 最后一次输入发生时的 tick 值 } LASTINPUTINFO; DWORD GetUserIdleTimeMs() { LASTINPUTINFO lii; lii.cbSize = sizeof(lii); if (!GetLastInputInfo(&lii)) return 0; return GetTickCount() - lii.dwTime; }