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

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

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


leonidus ©   (2007-08-01 11:13:00) 

Ситуация следующая. Нужен компонент на вход которого можно быо подать URL, а на выходе получить TStringlist загруженный HTML-кодом загруженной страницы. При этом компонент должен уметь работать с разными видами прокси и в случае авторизации умел показывать стандартное окно Windows с предложением ввести логин и пароль. Пробовал все это реализовать использую idHTTP, работает как-то не стабильно. Может есть готовые решения?


DVM   (2007-08-02 11:17:00) [1]


> а как правильно?

Для приема сокетных сообщений для разных сокетов может быть использовано одно единственное окно, т.к. разным сокетам можно назначить сообщения с разными номерами, скажем, WM_USER + 1 и WM_USER + 2 или использовать одно и то же сообщение, а сокеты различать по значению в wParam сообщения - там приходит хэндл сокета.


umbra   (2007-08-02 11:13:00) [2]

а как правильно?


DVM   (2007-08-02 11:06:00) [3]


> т.е. 1 сокет == 1 окно == 1 хэндл

у вас неверное понимание механизма работы асинхронных сокетов на сообщениях.


umbra   (2007-08-02 10:55:00) [4]


> ICS в состоянии держать 32000 соединений на один поток

это как это? в винде ограничение на количество открытых хэндов у процесса - 10000. А если я правильно понимаю, асинхронные сокеты работают через оконные сообщения, т.е. 1 сокет == 1 окно == 1 хэндл


Rouse_   (2007-08-02 09:40:00) [5]

Ну компонент - не компонент... так процедурка небольшая:

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1184925658&n=4


Anatoly Podgoretsky   (2007-08-01 21:54:00) [6]

Количество потоков резко ограничено, а ICS в состоянии держать 32000 соединений на один поток.


tesseract   (2007-08-01 17:35:00) [7]


>  Компоненты Инди используют блокирующие сокеты, ICS - асинхронные.


гм, в 9-ом точно как-то использовал неблокирующие. Хотя всё равно потом отказался - проще в потоках блокирующие использовать.


DVM   (2007-08-01 17:13:00) [8]


> но ведь к хттп это никак не относится

Именно к HTTP не относится, но клиенты различаются именно этим. Компоненты Инди используют блокирующие сокеты, ICS - асинхронные.


umbra   (2007-08-01 17:02:00) [9]


> может работать в асинхронном режиме

но ведь к хттп это никак не относится. Я имел в виду HTTP-клиент :0


Eraser   (2007-08-01 14:46:00) [10]


> umbra ©   (01.08.07 12:51) [3]

тем, что может работать в асинхронном режиме.
Для работы с разными прокси я бы всё таки рекомендовал indy.


umbra   (2007-08-01 12:51:00) [11]


> ICS
>

чем, иртересно HTTP-клиент из ICS принципиально отличаетс от HTTP-клиента из Indy?


SpellCaster   (2007-08-01 12:33:00) [12]

ICS


Сергей М.   (2007-08-01 11:20:00) [13]


> idHTTP, работает как-то не стабильно


В чем она проявляется ?


Наверх

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