Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.11;
Скачать: CL | DM;

Вниз

Закрытие программы после ошибки   Найти похожие ветки 

 
NovaPS ©   (2004-06-28 20:56) [0]

В неком потоке возникает ошибка. Производится ее перехват и обработка. Далее в MessageBox пользователь выбирает проигнорировать и идти дальше или закрыть программу.
С первым случаем проблем нет, а вот со вторым (закрыть программу) возникли проблемы, т.е. программа ни в какую не хочет закрываться.

Пожалуйста объясните как это можно сделать?
Заранее благодарен.

Код:
...
 { Thread class description }
 TLEThread = class(TThread)
...
 protected
   procedure Execute; override;
 end;

 procedure CloseApp; forward;

var
 LEForm: TLEForm;
 LEThread: TLEThread;

...

procedure TLEForm.ProceedBtnClick(Sender: TObject);
begin
 if ThreadIsRunning = false then
 begin
   LEThread := TLEThread.Create(True);
   LEThread.Priority := tpIdle;
   LEThread.FreeOnTerminate := True;
   LEThread.Resume;
 end;
end;

procedure TLEThread.Execute;
...
   try
     LEForm.FTPClient.Get(LnksHostSitePath + TMPStr, LnksLocalPath + TMPStr, True);
   except
     on E: Exception do ErrMsg(E.Message, FTPCurHost, LnksHostSitePath + TMPStr, 3);
   end;

...
end;

procedure TLEThread.ErrMsg(ErrorText, Host, FName: String; PhaseType: Integer);
...
 MBoxResult := MessageBox(0, PChar(MsgText), "Произошла ошибка!", MB_OKCANCEL);
 if MBoxResult = 2 then CloseApp;

end;

procedure CloseApp;
begin
 LEThread.Suspend; ???
 LEThread.Terminate; ???
 LEThread.Free; ???
 LEForm.Close; ???
end;

end.


 
Mim1 ©   (2004-06-28 21:59) [1]

Application.treminate в sincronyze;
или
TerminateProcess(getcurrentprocess);


 
NovaPS ©   (2004-06-28 22:04) [2]

Спасибо, помогло.



Страницы: 1 вся ветка

Текущий архив: 2004.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
14-1087581793
Daniel_
2004-06-18 22:03
2004.07.11
Кто знает, на "Королевстве" долго вопросы обрабатываются?


1-1088061880
Alfer
2004-06-24 11:24
2004.07.11
Internal error L470


14-1088062240
Frolov Alexey
2004-06-24 11:30
2004.07.11
Тихий системный блок -


3-1087082684
Другаля Ян Павлович
2004-06-13 03:24
2004.07.11
FastReport динамическое формирование названия поля


14-1087830429
RealRascal
2004-06-21 19:07
2004.07.11
Есть идея!