Форум: "Сети";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Вниз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 вся ветка
Форум: "Сети";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.011 c