Как вариант можно попробовать это.
Код:
procedure MyDelay(mSec : integer);
//Задержка на заданное ко-во миллисекунд
var
iStart, iStop: DWORD;
begin
iStart := GetTickCount;
repeat
iStop := GetTickCount;
sleep(10);
Application.ProcessMessages;
until (iStop - iStart) >= mSec;
end;
Код:
begin
Application.Initialize;
//---------------------------
Form_Logo := TForm_Logo.Create(nil);
Form_Logo.Show;
MyDelay(3000);
//---------------------------
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Тогда и таймер не нужен будет.
P.S.
Честно признаюсь, что я такой вариант не "щупал" ...