Здравствуйте ув. программисты . Сутки уже сижу не могу разобраться почему не хочет работать таймер. 
	Код:
	var
   Timer01: TTimer;
procedure Init; //Вызывается при включении скрипта
begin
   Timer01:=TTimer.Create(nil); //выделяем памать и т.п.
   Timer01.OnTimer:=@OnTimer01; //привязываем процедуру к событию
   Timer01.enabled:=true; //начальное положение включен(true)/выключен(false)
   Timer01.interval:=2000; //интервал(в милисекундах) как часто таймер срабатывает
end;
procedure OnTimer01(Sender: TObject);
begin
        buf:=HStr('39 04 00 00 00 00 00 00 00 00'); 
        SendToServer; 
end;
procedure Free; //Вызывается при выключении скрипта
begin
   Timer01.free; 
end;
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
    if FromClient and (pck=HStr('56 18 00 00 00 00 00 00 00 00')) then 
     begin
        buf:=HStr('19 B6 C6 A4 40 00 00 00 00'); 
        SendToServer;
        Timer01.enabled:=true; 
     end 
end.
 Должно работать следующим образом : При приходе пакета "56" , скрипт отправит пакет "19". Это условие выполняется , а дальше нет. После отправки "19" пакета скрипт включает таймер Timer01.enabled:=true;  после включения таймера скрипт должен отправить "39" пакет на сервер , но не отправляет его .