Форум: "Начинающим";
Текущий архив: 2006.06.04;
Скачать: [xml.tar.bz2];
ВнизПодскажите как убрать сообщение об ошибке Найти похожие ветки
← →
KyRo (2006-05-16 16:49) [0]У меня есть инди фтп клиент я им отправляю файлы на сервер .
Так вот мне надо что бы на случай если сервер будет не доступен
что бы не возникало не какое сообщение виндовс , а по тихому писалось мне в лог работы программы.
var
ms : TMemoryStream;
Reg:TRegistry;
ip:String;
begin
Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
Reg.OpenKey("\SOFTWARE\ATM_Log_Sender\Settings\", false);
Ip:=Reg.ReadString("FTP");
ms := TMemoryStream.Create;
cFTP.Host:=ip;
cFTP.Connect(True,10000);
try
Result:=True;
ms.LoadFromFile(ExtractFilePath(Application.ExeName)+"log.log");
cFTP.Put(ms,"log.log",False);
Try
FsMemo1.Lines.Add("Был отгружен файл( "+FileN+" Размером "+IntToStr(ms.Size)+" байт ) по адресу FTP://"+ip+" : "+TimeToStr(Time)+" "+DateToStr(Date));
Result:=True;
Except
FsMemo1.Lines.Add("Отгрузка не удалась");
Result:=False;
end;
cFTP.Disconnect;
Except
end;
end;
Как видно из кода я пытаюсь сделать через
Try .. Except .. End;
Но если коннект не возникает то программа все равно выдает сообщение на экран .
Подскажите как этого избежать ?
← →
Сергей М. © (2006-05-16 16:54) [1]Выполнить метод Connect() в контексте того самого "через Try .. Except .. End", а не вне его, как это реализовано судя по приведенному коду.
Ы ?
← →
KyRo (2006-05-16 17:16) [2]То есть сделать так ?
try
cFTP.Connect(True,10000);
Except
end;
Разве это поможет ? Вроде это вообще не правильно тогда Try .. Except .. End будет выполнятся для предыдущего оператора !!!
← →
Desdechado © (2006-05-16 17:20) [3]> для предыдущего оператора
это какого такого?cFTP.Host:=ip;
cFTP.Connect(True,10000);
try
Result:=True;
заменить наcFTP.Host:=ip;
try
cFTP.Connect(True,10000);
Result:=True;
далее по тексту
← →
KyRo (2006-05-16 17:26) [4]ок спасибо получилось
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.06.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c