我有一个 Windows 服务程序(使用 C++ 编写),需要在一天中的某个时间执行节能电源操作。我需要查明用户在执行电源操作时是否可能在终端,如果他/她在,则将其推迟。所以我的问题是,你怎么知道来自 Windows 服务(作为本地系统运行)的最后一次用户活动的时刻?
PS。用户活动是指键盘和鼠标活动。
我有一个 Windows 服务程序(使用 C++ 编写),需要在一天中的某个时间执行节能电源操作。我需要查明用户在执行电源操作时是否可能在终端,如果他/她在,则将其推迟。所以我的问题是,你怎么知道来自 Windows 服务(作为本地系统运行)的最后一次用户活动的时刻?
PS。用户活动是指键盘和鼠标活动。
每个用户会话都必须在其会话中运行一个与服务通信的后台应用程序,然后应用程序可以报告上次活动时间,以便服务可以根据该时间做出决策。
根据它的确定性,您可以使用任务调度程序。它可以在计算机空闲时触发任务,等待一段时间等。您可以手动添加任务开始,然后使用API 。