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

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

Ошибка #10061 у IdHTTP1. Как исправить? [D7, WinXP]


DrAndrew ©   (2007-06-19 13:01:00) 

Доброго дня, Мастера!
У меня есть процедура со следующим кодом:
 Stream := TMemoryStream.Create;
 try
     IdHTTP1.Connect();
     IdHTTP1.Get(' http://www.kharkov.net/archive/update.txt', Stream);
     if Stream = nil then Exit;
     Stream.Position := 0;
     некоторый код выполения......................................
     IdHTTP1.Disconnect;
  finally
   Stream.Free;
 end;
Во время проверки на обновление эта процедура должна связывается с моим сервером и загружает информационный файл об обновлении (есть или нет). Но, возникла проблема. Когда эта процедура включается дома у меня все отлично, а в медуниверситете выскакивает вот такая ошибка:"Socket Error # 10061 Connection refused!". Я предполагаю, что наверное разные на моем и в институте схемы подключения к интернету. Как можно прописать компонент IdHTTP1 чтобы его подключение было универсальным (с прокси, без прокси или еще как)?


G_M_S   (2007-06-19 13:27:00) [1]


> А как можно прописать свойства компонента IdHTTP, чтобы
> он брал настройки активного броузера Интернет?

Не извращайся - введи маленькую формочку с настройками прокси: любая уважающая себя программа, работающая с HTTP, имеет такую формочку.

ЗЫ: у меня активный бравзер - ИЕ, у него прописан левый (не существующий прокси), да еще и сам он файерволом порубан. Как думаешь - выгодно из него настройки брать?


G_M_S   (2007-06-19 13:24:00) [2]


>      IdHTTP1.Get(' http://www.kharkov.net/archive/update.
> txt', Stream);

Превед, Харьков! ;)))

Во-первых - зачем "IdHTTP1.Connect();", если ты юзаешь IdHTTP1.Get? ИМХО он тут в принципе ни к чему. update.txt - текстовый файл? Если да - не мучайся и напиши просто:

s := IdHTTP1.Get(' http://www.kharkov.net/archive/update.txt');

Это проще и гарантировано работает.

По поводу ошибки - это ошибка соединения. Если возникает - значит, ты висишь через прокси. Для установки параметров прокси в TidHTTP есть ProxyParams.

Пишешь:
 
 with idHTTP1.ProxyParams do
 begin
   Proxyport := 3128; //ПОРТ - СВОЙ!!!
   ProxyServer := '10.0.0.1';//Прокси - тоже свой
 end;

Если прокси с авторизацией - добавь еще:

   BasicAuthentication := true;
   ProxyPassword := '...';
   ProxyUserName := '...';


DrAndrew   (2007-06-19 13:22:00) [3]

нет мне необходимо обработать именно эту процедуру в программе а не в броузере.


Плохиш   (2007-06-19 13:21:00) [4]


> DrAndrew   (19.06.07 13:15) [5]
> это не из браузера, а из программы - меню поиск обновления

Так попробуй из браузера, а то так и будешь искать не там где потерял, а там где светлее...


DrAndrew   (2007-06-19 13:18:00) [5]

А как можно прописать свойства компонента IdHTTP, чтобы он брал настройки активного броузера Интернет?


DrAndrew   (2007-06-19 13:15:00) [6]

это не из браузера, а из программы - меню поиск обновления


Сергей М.   (2007-06-19 13:11:00) [7]

"Универсальность" вряд ли возможна, если не сказать что невозможна.


> выскакивает вот такая ошибка:"Socket Error # 10061


А что говорит браузер при попытке обратиться по тому же URL ?


DrAndrew   (2007-06-19 13:10:00) [8]

Что совсем никак? Может прописать какую-то процедурку типа логики если нет, то, а если так то иначе........


DrAndrew   (2007-06-19 13:08:00) [9]

Небольшое добавление:
в свойствах компонента IdHTTP1 установлены - Port=80; ProtocolVersion=pv_1.1 и BoundPort=0. Вопрос прежний как сделать подключение универсальным?


KSergey   (2007-06-19 13:07:00) [10]

Универсально - никак.
С настраиваемым прокси - можно (вроде есть тама такая настройка в IdHTTP? Или ошибаюсь?
Елси есть - вынести ее в пользовательский интерфейс.


Наверх

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