Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> HTTP.GET - продолжение работы, в случае ошибки 
:(
    Опции темы
Rodman
Дата 10.6.2008, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: нет
Всего: 122



Дароф

Ситуация такая что я пишу 

Код

      http:=TIdHTTP.Create(nil);
      try
        for j:=1 to 15 do
        begin  
              sLine.Text:=http.Get(Links[j, 1]);
              ...//обрабатываю
        end; 
      except
        begin
          ShowMessage('Трабла. ахтунг');
          http.free;
        end;
      end;

но бывает такое что страницу низя открыть, по разным причинам и вылетает трабла 
Код

---------------------------
Debugger Exception Notification
---------------------------
Project AutoParser.exe raised exception class EIdHTTPProtocolException with message 'HTTP/1.0 404 Not Found'. Process stopped. Use Step or Run to continue.
---------------------------
OK   Help   
---------------------------
как сделать так чтобы трабла в лог писалась, а потом продолжала следующие странички открывать и обрабатывать?

Сенкс
PM MAIL WWW Skype GTalk YIM MSN   Вверх
z-END
Дата 10.6.2008, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 1
Всего: 102



использовать try except приблизительно так как у тебя и показано. при запуске из под IDE нужно отключить остановку при эксепшенах или просто запускать как отдельнй файл (через проводник и т.п.) 


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
Rodman
Дата 10.6.2008, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: нет
Всего: 122



не понял... 

Цитата(z-END @  10.6.2008,  13:08 Найти цитируемый пост)
при запуске из под IDE нужно отключить остановку при эксепшенах

как?
PM MAIL WWW Skype GTalk YIM MSN   Вверх
Snowy
Дата 10.6.2008, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



При эксепшене в диалоге есть галочка - не стопориться на данном виде эксепшена.
Ставишь её, и всё. Больше среда не будет тебя на нём беспокоить.
PM MAIL   Вверх
Rodman
Дата 10.6.2008, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: нет
Всего: 122



а все что в эксепшине написано в моем коде - убрать?:

Добавлено через 11 минут и 49 секунд
Цитата(Snowy @  10.6.2008,  14:13 Найти цитируемый пост)
Ставишь её, и всё. Больше среда не будет тебя на нём беспокоить. 

там жешь просто "View CPU window" и все...

не думаю что это то, что надо
PM MAIL WWW Skype GTalk YIM MSN   Вверх
Snowy
Дата 10.6.2008, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Вместо мессаги сделай добавление в лог текста ошибки.
Уничтожение объекта нужно поместить в finally, а не эксепшн!
PM MAIL   Вверх
sai_NT
Дата 14.6.2008, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 8.8.2007

Репутация: 2
Всего: 3



примерно так:
Код

http:=TIdHTTP.Create(nil);
for j:=1 to 15 do begin
      try
              sLine.Text:=http.Get(Links[j, 1]);
              ...//обрабатываю
      except
              on E: Exception do LogMemo.Lines.Add(E.HelpContext+': '+E.Message);
      end;    
end;
http.free;


кинь на форму мемку и назови LogMemo.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.2028 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.