Вниз
Скачать: CL | DM;

try finally для IdFTP   Найти похожие ветки 

 
Pavelkq   (2005-05-03 13:21) [0]

Пишу мульку для скачивания файлов с ФТП. Когда конект хороший прога пашет, как зверь, но если какие-то проблемы с коннектом, то и прога вылетает по ошибке. Раньше не работал с try и finally. А тут решил включить, т.к. у IdFTP не нашел никаких обработки ошибок. Но чего-то не работает.
procedure TForm1.Button1Click(Sender: TObject);
var RemoteTSL, LocalTSL: TStringList;
   Set1,Set2: integer;
   MyPath, RWord,LWord: string;
   Good: Boolean;
begin
 If MyPath="" then MyPath:=GetCurrentDir;
 RemoteTSL:=TStringList.Create;
 LocalTSL:=TStringList.Create;
 Good:=False;

 While not(Good) do
 begin
   Memo1.Lines.add("Соединяемся...");
   try
     IdFTP1.Connect(True);
     IdFTP1.ChangeDir("updates3000");
     Memo1.Lines.Add("Соединились");
     Memo1.Lines.Add("Ждем список файлов");
     IdFTP1.List(RemoteTSL, "*.rar", False);
   finally
     if RemoteTSL.Count=0 then Memo1.Lines.Add("Ошибка соединения")
     else Good:=True;
   end;
 end;
...
end;

 А потом надо будет повторить этот же агалог кода для самого скачивания...


 
Digitman ©   (2005-05-03 13:39) [1]


> А тут решил включить


и где же ?


> обработки ошибок


блок try..finally не предназначен для обработки исключений
для этого существует блок try..except


 
Pavelkq   (2005-05-03 13:44) [2]

Ну, чайник я, чайник. Подскажите, если не сложно, как это правильно сделать?


 
Digitman ©   (2005-05-03 13:56) [3]

try
    IdFTP1.Connect(True);
    IdFTP1.List(RemoteTSL, "*.rar", False);
  except
   on e:exception do
    Showmessage("Вот такая вот беда приключилась:"#10 + e.classname + " " + e.message);
  end;


 
Pavelkq   (2005-05-03 14:23) [4]

Спасибо! Небольшие добавки с переменной Good и все сработало, как надо, т.е. долбится до потери пульса.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
4-1118920361
leonidus
2005-06-16 15:12
2005.08.14
Как получить заголовок чужого окна ?


14-1121805487
radium
2005-07-20 00:38
2005.08.14
Update для D7 - кто ставил?


1-1122364083
Uran
2005-07-26 11:48
2005.08.14
Добавить событие OnMousDown OnMousUp


14-1122290680
Копир
2005-07-25 15:24
2005.08.14
Хорошая новость.


4-1118737324
AbrosimovA
2005-06-14 12:22
2005.08.14
На Дельфи OpenProcess() возвращает другое значение




   Наверх