通过创建派生自任何 WMI 命名空间中 __TimerInstruction 类的类实例来创建计时器事件。 然后,WMI 会在适当的时间生成计时器事件。 如果由于计算机停机而错过了计时器事件,WMI 会通知你错过的事件。 WMI 支持计时器事件,以便实现向后兼容,并用于需要了解自上次传递事件以来错过多少事件的场景。 但是,对于大多数计时器事件,应为 Win32_LocalTime 或 Win32_UTCTime创建事件筛选器。 有关详细信息,请参阅 使用Win32_LocalTime或Win32_UTCTime创建计时器事件。
以下过程介绍如何使用__TimerInstruction创建和接收计时器事件。
使用 __TimerInstruction 创建和接收计时器事件
创建 __AbsoluteTimerInstruction 或 __IntervalTimerInstruction 类的实例。
__AbsoluteTimerInstruction 和 __IntervalTimerInstruction 类派生自 __TimerInstruction 类,该类包含唯一的开发人员分配字符串,用于标识计时器事件的类型。 __TimerInstruction 类还包含一个值,该值指定如果定时器事件发生时 WMI 不可用,是否应发送迟到的通知。
使用 __AbsoluteTimerInstruction 发送在特定时间在特定日期发生的绝对计时器事件。 使用 __IntervalTimerInstruction 发送定期发生的间隔计时器事件。
将应用程序设置为接收 __TimerEvent 实例。
若要生成事件,WMI 将创建 __TimerEvent 类的实例,并将实例转发给使用者。 __TimerEvent 实例包含使用者的计时器指令标识符。 该实例还包含一个值,该值指定 WMI 在 WMI 无法访问使用者时,应在任何时间间隔内发送计时器事件通知的次数。