Показать сообщение отдельно
  #7  
Старый 23.07.2012, 21:52
MiraLaklamon MiraLaklamon вне форума
Новичок
 
Регистрация: 07.06.2012
Сообщения: 59
Версия Delphi: 6, 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от osminog
получил ответ, что служба А1 запущена (или нет)
прошло 3-5 сек
получил ответ, что служба А2 запущена (или нет)
В таймере выставь у свойства "Interval" нужное значение в миллисекундах (3000 - значит 3 секунды). И примерно такой код в обработчике "OnTimer" у таймера.
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Timer1.Tag:=Timer1.Tag+1;
  if Odd(Timer1.Tag) then
  begin
    // проверка 1-й службы
    if ServiceGetStatus('','A1')=SERVICE_RUNNING then
    Label2.Caption:=(' запущена ')
    else Label6.Caption:=(' не запущена ');
  end else
  begin
    // проверка 2-й службы
    if ServiceGetStatus('','A2')=SERVICE_RUNNING then
    Label8.Caption:=(' запущена ')
    else Label10.Caption:=(' не запущена ');
  end;
end;

Цитата:
Сообщение от M.A.D.M.A.N.
Понял, тебе нужен отложенный вызов процедуры. Я бы сделал на потоке, внутрях которого Sleep(3000) и вызов твоего обработчика.
Для этой задачи это помоему излишнее усложнение.
Ответить с цитированием