Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.11;
Скачать: CL | DM;

Вниз

Прервать соединение   Найти похожие ветки 

 
v eb   (2006-05-25 15:45) [0]

Здравствуйте.
Подскажите, что сделать чтоб по нажатию кнопки прервалась работы функции IdHTTP.Get. Т.е. если медленное соединение, а страница большая, то надо предоставить пользователю возможность прервать загрузку. Как это сделать?


 
Сергей М. ©   (2006-05-25 15:46) [1]

Закрыть гнездо из другого треда


 
veb   (2006-05-25 15:57) [2]

Сергей, не понял сленг? имется виду разбиение на потоки?
Пожалуйста, можно пример кода.
у меня сделано так
 Memo1.Text := IdHTTP.Get("http://...");
и все было бы хорошо если б я мог прервать загрузку.


 
Kolan ©   (2006-05-25 16:05) [3]

Я ни разу не работал с интернетом итд. Но видимо смысл такой.
Как всегда тяжёлые вычисления, копирование, а в вашем случае загрузка выносятся в отдельный поток(TThread). А прерывается все это дело из главного по команде пользователя.

PS
 Попытался интерпритировать [1]. Могу ошибаться :)


 
Сергей М. ©   (2006-05-25 16:47) [4]


> veb   (25.05.06 15:57) [2]


в Indy9:

CloseSocket(IdHTTP.Socket.Binding.Handle)

Эта строка, вызванная в доп.потоке, приведет к прерыванию выполнения метода Get() в потоке, вызвавшем это самый IdHTTP.Get().. При этом будет возбуждено исключение, перехватываемое и обрабатываемое в блоке try..except


 
veb   (2006-05-25 16:59) [5]

Сергей, спасибо!
Еще не попрбовал, но в целом понятно.



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

Текущий архив: 2006.06.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
2-1147024647
parovoZZ
2006-05-07 21:57
2006.06.11
Форма авторизации


2-1148591788
TButton
2006-05-26 01:16
2006.06.11
корень третей степени


2-1148732567
Revan
2006-05-27 16:22
2006.06.11
Настройка громкости


9-1131201020
Darthman
2005-11-05 17:30
2006.06.11
Ну вот и пришло время обогатить мир еще одним скроллером:) Цените


4-1142354826
Volf_555
2006-03-14 19:47
2006.06.11
Как изменить UIN и пароль в QIP?