Condividi tramite


Creazione di un evento timer con __TimerInstruction

Si crea un evento timer creando un'istanza di classi derivate dalla classe __TimerInstruction in qualsiasi spazio dei nomi WMI. WMI genera quindi l'evento timer al momento appropriato. Se si perde un evento timer a causa del tempo di inattività del computer, WMI segnala l'evento perso. WMI supporta gli eventi timer per la compatibilità con le versioni precedenti e per gli scenari in cui è necessario conoscere il numero di eventi mancanti dall'ultimo evento recapitato. Per la maggior parte degli eventi timer, tuttavia, è necessario creare un filtro eventi per Win32_LocalTime o Win32_UTCTime. Per altre informazioni, vedere Creazione di un evento timer con Win32_LocalTime o Win32_UTCTime.

La procedura seguente descrive come creare e ricevere un evento timer con __TimerInstruction.

Per creare e ricevere un evento timer con __TimerInstruction

  1. Creare un'istanza delle classi __AbsoluteTimerInstruction o __IntervalTimerInstruction .

    Le classi __AbsoluteTimerInstruction e __IntervalTimerInstruction sono derivate dalla classe __TimerInstruction, che contiene una stringa univoca assegnata dallo sviluppatore che identifica il tipo di evento timer. La classe __TimerInstruction contiene anche un valore che specifica se WMI deve inviare una notifica tardiva se l'evento timer si verifica quando WMI non è disponibile.

    Usare __AbsoluteTimerInstruction per inviare eventi timer assoluti, che si verificano in una data specifica in un momento specifico. Usare __IntervalTimerInstruction per inviare eventi timer di intervallo, che si verificano regolarmente.

  2. Impostare l'applicazione per ricevere un'istanza di __TimerEvent .

    Per generare un evento, WMI crea un'istanza della classe __TimerEvent e inoltra l'istanza al consumer. L'istanza di __TimerEvent contiene l'identificatore dell'istruzione timer dal consumer. L'istanza contiene anche un valore che specifica il numero di volte in cui WMI deve inviare la notifica dell'evento timer durante qualsiasi intervallo quando WMI non riesce a raggiungere il consumer.