Показать сообщение отдельно
Старый 28.11.2009, 12:06   #7
Рыцарь
 
Аватар для TAMBIK
 
Регистрация: 03.03.2009
Сообщений: 773
Сказал Спасибо: 361
Имеет 300 спасибок в 168 сообщенях
TAMBIK на пути к лучшему
По умолчанию

Код:
 // =================================================================
  const
   Name='ххххх';

    var
    Timer01: TTimer;
   x :integer;

procedure OnTimer01(Sender:TObject);// процедурa таймера
begin
  case x of
  1: begin
     buf:=hstr('пакет №1');
     SendToServerEx(Name);
     inc(x);
     end;
  2: begin
     buf:=hstr('пакет №2');
     SendToServerEx(Name);
     inc(x);
     end;
  3: begin
     buf:=hstr('пакет №3');
     SendToServerEx(Name);
     inc(x);
     end;
   4:begin
     buf:=hstr('пакет №4');
     SendToServerEx(Name);
     Timer01.enabled:=false; // отключили таймер
     x:=0;
     end;
end;
end;
procedure Init;
begin
  x:=0;
  Timer01:=TTimer.Create(nil);
  Timer01.OnTimer:=@OnTimer01;
  Timer01.enabled:=false;
  Timer01.interval:=2000; //<<== время  интервал  1000 = 1 секунда
end;

procedure Free; 
begin
 Timer01.free;
end;
//-------------------------
begin 
 // при приходе пакета № 34 от клиента  и если выполнена соцдействие victory = 3 
  if FromClient and (pck[1]=#$34) and (ReadD(2) = 3) then begin // 
      x:=1; // указатель какое действие в процедуре таймера начать выполнять
      Timer01.enabled:=true; // включить таймер
      pck:='';
     exit; 
   end;    
end.
Добавлено через 2 минуты
Код:
можно сделать так что бы не приходилось ловит каждый раз по новой пакеты
посмотри тему автозаточка просто от MKS
там как запомнить пакет
__________________
Тут не форум гадалок, если ты делаешь все правильно и по пунктам - то все должно работать

Последний раз редактировалось TAMBIK, 28.11.2009 в 12:06. Причина: Добавлено сообщение
TAMBIK вне форума   Ответить с цитированием
За это сообщение TAMBIK нажился 2 спасибками от: