Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подскажите как убрать сообщение об ошибке [D7, XP]


KyRo ©   (2006-05-16 16:49:00) 

У меня есть инди фтп клиент я им отправляю файлы на сервер .
Так вот мне надо что бы на случай если сервер будет не доступен
что бы не возникало не какое сообщение виндовс , а по тихому писалось мне в лог работы программы.

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;
Но если коннект не возникает то программа все равно выдает сообщение на экран .
Подскажите как этого избежать ?


KyRo   (2006-05-16 17:26:00) [1]

ок спасибо получилось


Desdechado   (2006-05-16 17:20:00) [2]

> для предыдущего оператора
это какого такого?
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:16:00) [3]

То есть сделать так ?
try
cFTP.Connect(True,10000);
Except
end;
Разве это поможет ? Вроде это вообще не правильно тогда Try .. Except .. End будет выполнятся для предыдущего оператора !!!


Сергей М.   (2006-05-16 16:54:00) [4]

Выполнить метод Connect() в контексте того самого "через Try .. Except .. End", а не внеего, как это реализовано судя по приведенному коду.

Ы ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо