вот у меня примерно так выглядет
Код:
type
TWaitThread = class(TThread)
ecze: string;
provera : string;
ary : integer;
HTimer: THandle;
procedure Execute; override;
procedure TimerFired(Sender: TObject);
end;
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
private
{ Private declarations }
public
{ Public declarations }
Zad : TWaitThread;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Zad := TWaitThread.Create(TRUE);
with Zad do
begin
ecze := fail.Text;
OnTerminate := TimerFired;
FreeOnTerminate := TRUE;
Resume;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
n := Zad.HTimer;
SetEvent(n);
end;
procedure TWaitThread.Execute;
begin
HTimer := CreateEvent(nil,true,false,nil);
try
for n := 0 to 5 do
begin
WaitForSingleObject(HTimer, INFINITE);
WinExec(PChar(ecze), SW_ShowNormal);
end
finally
CloseHandle(HTimer);
end;
end;
end;
так команда WinExec(PChar(ecze), SW_ShowNormal);
сразу 5 раз запускаеться
а мне нужно шоб запускала после каждого нажатия на кнопку