Pentru a-l folosi in Delphi, aveti mai jos un exemplu de cod:
- procedure WaitableTimer;
- const sec = 10000000;
- var wTimer, lBusy : Longint;
- interval : LARGE_INTEGER;
- begin
- wTimer := CreateWaitableTimer(nil, True, PANSIChar('myTimer' + IntToStr(GetTickCount)));
- {numele poate fi si gol (empty string}
- interval.QuadPart := - sec * 3; {numarul de secunde}
- {valoare negativa = valoare relativa}
- {valoare pozitiva = valoare absoluta}
- Repeat
- SetWaitableTimer(wTimer, TLargeInteger(interval), 0, nil, nil, false);
- lBusy := WaitForSingleObject(wTimer, INFINITE);
- If lBusy = WAIT_OBJECT_0 Then
- Begin
- Execute_Something; {aici se pune codul care se doreste executat la fiecare X secunde}
- End;
- Until some_condition;
- CancelWaitableTimer(wTimer);
- CloseHandle(wTimer);
- end;
Welcome to BitCell. Click here to register !