2

想象一下,我正在创建一个应用程序来测量某个用户登录计算机的时间(我正在编写的实际应用程序不同,但这没关系)。

我需要跟踪用户何时登录、注销、何时挂起计算机(关闭菜单中的“待机”选项)以及计算机何时从睡眠中恢复。

我正在使用SystemEvents(特别是事件) PowerModeChangedSessionSwitch它主要是有效的,但有一个例外:

当计算机挂起时,PowerModeChanged使用 mode 正确引发事件Suspend

当计算机恢复时,PowerModeChanged以 模式升高Resume。到现在为止还挺好。

在那之后,SessionSwitch事件引发了原因SessionLock。但是当我最终在简历后登录时,没有SessionUnlock.

这种行为发生在 Windows XP 上,我需要它在 XP、Vista 和 7 上正常工作。

有没有办法收到这个解锁?

4

1 回答 1

3

原来在我的一个处理程序中有一个未捕获的异常。显然,这阻止了后续事件的触发。

于 2011-08-10T16:40:19.460 回答