![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Всем привет. Возникла такая проблемка. Как реализовать задержку между кодом программы без применения sleep().
Код:
procedure dvizhok(); delay(10000); keybd_event(1,29,0,0); delay(100); setcursorpos(812,560); delay(100); mouse_event(mouseeventf_move,1,0,0,0); delay(100); end; Код:
procedure Delay (Milliseconds: Integer); var Tick: DWord; Event: THandle; begin Event := CreateEvent(nil, False, False, nil); try Tick := GetTickCount + DWord(Milliseconds); while (Milliseconds > 0) and (MsgWaitForMultipleObjects(1, Event, False, Milliseconds, QS_ALLINPUT) <> WAIT_TIMEOUT) do begin Application.ProcessMessages; Milliseconds := Tick - GetTickcount; if Application.Terminated then Exit; end; finally CloseHandle(Event); end;end; |
#2
|
||||
|
||||
![]() Сделать этот код в отдельном потоке и там смело применять Sleep. И пока поток выполняется, не запускать второй его копии.
jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
||||
|
||||
![]() Как мне дождатся завершения потока?
|
#4
|
||||
|
||||
![]() А его ещё и дожидаться надо? Вообще флаг Terminated вроде, но не проще тогда код, который после завершения, в конец потока дописать?..
jmp $ ; Happy End! The Cake Is A Lie. |
#5
|
|||
|
|||
![]() WaitForSingleObject
|
#6
|
||||
|
||||
![]() По сегоднешнему поиску по форуму на счет флага terminated это приостановка потока.
Цитата:
|
#7
|
||||
|
||||
![]() Что должно происходить после завершения потока?
jmp $ ; Happy End! The Cake Is A Lie. |
#8
|
||||
|
||||
![]() должен перейти ниже к строчке keybd_event(1,29,0,0); ,потом опять выполняется процедура delay,(в нем будет находится поток),ожидается завершение потока и переходит к setcursorpos(812,560) и т.д.
|
#9
|
||||
|
||||
![]() Я имел в виду ВЕСЬ код этой процедуры запихать в поток, и все DELAY заменить на SLEEP.
jmp $ ; Happy End! The Cake Is A Lie. |
#10
|
||||
|
||||
![]() Ёлки иголки!, а я целый день мучаюсь как реализовать.Спасибо за советы.
|