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

Как продолжить выполнение программы после искл. ситуации(raise)?   Найти похожие ветки 

← →
VoyagerEternal ©   (2009-06-26 16:05) [0]

Как продолжить выполнение программы после искл. ситуации(raise)?

Задача такая:
загружаю с инета файл функцией:
http.Get("http:\\",FileStream);
если загрузка не удалась, функция генерирует исключительную ситуацию вызовом raise

вопрос: как продолжить выполнение процедуры при ошибке (исключительной ситуации)?


procedure TForm1.Button1Click(Sender: TObject);
begin

try
 http.Get("http:\\",FileStream);
finally
 //здесь программа выходит из процедуры если была ошибка
 //как заставить программу продолжить выполнять эту процедуру при ошибке?
end.

...//этот код не выполняется при ошибке (исключительной ситуации), а хочется

end;


← →
Юрий Зотов ©   (2009-06-26 16:09) [1]

Посмотрите try-except


← →
VoyagerEternal ©   (2009-06-26 16:20) [2]

try
http.Get(Url,F);
except on E:Exception do
end;

работает,
как теперь заставить http.Get не показывать сообщение об ошибке — оно мешает работе программы


← →
DVM ©   (2009-06-26 16:28) [3]


> http.Get не показывать сообщение об ошибке — оно мешает
> работе программы

Это не твоя программа сообщение показывает это Delphi - в свойствах там где сними галку Stop On Delphi Exceptions


← →
Юрий Зотов ©   (2009-06-26 16:29) [4]

> VoyagerEternal ©   (26.06.09 16:20) [2]

Попробуйте запустить программу НЕ из Delphi.


← →
Ega23 ©   (2009-06-26 16:37) [5]


> как теперь заставить http.Get не показывать сообщение об
> ошибке — оно мешает работе программы


Если запустишь не из среды Delphi - будет всё нормально.
Если в среде не хочешь ошибку получать:
Tools -> Debugger Options -> Language Exceptions -> Stop on Delphi Exceptions (зависит от версии Delphi, у меня Notify on language exceptions)
Но с этой галкой осторожнее - я так, однажды её сняв и забыв обратно включить, бился почти день, ошибку искал.



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

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



Память: 0.46 MB
Время: 0.007 c
2-1246216548
Pasha
2009-06-28 23:15
2009.08.30
Обращение к ячейкам в БД


15-1245963387
Германн
2009-06-26 00:56
2009.08.30
Старикам, помнящим свою молодость.


1-1213336156
Anton
2008-06-13 09:49
2009.08.30
отладка библиотеки


15-1246449417
@!!ex
2009-07-01 15:56
2009.08.30
Ограничить сеть Virtual Box a


1-1212768112
San1712
2008-06-06 20:01
2009.08.30
Как передать данные в процедуру ?




   Наверх