Udostępnij przez


Uruchomienie pojedynczego zdarzenia timera

[Funkcja skojarzona z tą stroną, czasomierze multimedialne, jest starszą funkcją. Został zastąpiony przez Multimedia Class Scheduler Service. usługa Harmonogram klas multimedialnych został zoptymalizowany pod kątem systemów Windows 10 i Windows 11. Firma Microsoft zdecydowanie zaleca, aby nowy kod używał usługi Harmonogramu klas multimedialnych zamiast czasomierzy multimedialnych, jeśli to możliwe. Firma Microsoft sugeruje, że istniejący kod, który używa starszych interfejsów API, należy przepisać go do korzystania z nowych interfejsów API, jeśli to możliwe.]

Notatka

W tym temacie opisano przestarzałą funkcję. Nowe aplikacje powinny używać funkcji CreateTimerQueueTimer do tworzenia czasomierzy.

 

Aby uruchomić pojedyncze zdarzenie czasomierza, wywołaj funkcję timeSetEvent, określając ilość czasu przed wystąpieniem wywołania zwrotnego, rozwiązanie, adres funkcji wywołania zwrotnego (zobacz TimeProc) i dane użytkownika do dostarczenia funkcji wywołania zwrotnego. Aplikacja może użyć funkcji podobnej do poniższej, aby uruchomić pojedyncze zdarzenie czasomierza.

UINT SetTimerCallback(NPSEQ npSeq,  // sequencer data
    UINT msInterval)                // event interval
{ 
    npSeq->wTimerID = timeSetEvent(
        msInterval,                    // delay
        wTimerRes,                     // resolution (global variable)
        OneShotCallback,               // callback function
        (DWORD)npSeq,                  // user data
        TIME_ONESHOT );                // single timer event
    if(! npSeq->wTimerID)
        return ERR_TIMER;
    else
        return ERR_NOERROR;
} 

Aby zapoznać się z przykładem funkcji wywołania zwrotnego OneShotCallback, zobacz Pisanie funkcji wywołania zwrotnego czasomierza.

Używanie czasomierzy multimedialnych