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

Вниз

Вызов InternetSetStatusCallback из TThread   Найти похожие ветки 

 
TempUser142   (2011-02-16 01:13) [0]

Возникла интересная проблема. Есть кусок кода который отправляет файл на сервер с помощью WinInet. Для статуса загрузки используется InternetSetStatusCallback и моя произвольная callback функция. Отправка данных функцией HttpSendRequestEx.

При выполнении всего этого куска в основном потоке программы, проблем не возникает, всё работает как собсно и задумывалось. При попытке выполнить этот же код из TThread возникают какие-то непонятные явления. Прогресс доходит примерно до 30% и всё замирает. Попробовать пошаговую отладку, дошёл до первого входа в мою callback ф-ю и с этого момента выхожу из пошагового выполнения кода и запускаю нормальное выполнение, всё работает нормально. Если же выхожу из пошагового режима до первого запуска callback ф-и то опять всё замирает, т.е. не работает как надо.

Нашёл какие то обрывки упоминания о том что InternetSetStatusCallback создаёт отдельный поток http://stackoverflow.com/questions/1977212/asynchronous-request-using-wininet. Но как это увязать с моей задачей ума не хватает.. Кусок кода отправки файла на сервер взят с этого примера http://forum.vingrad.ru/forum/topic-186678/kw-wininet-tmfwihttp-http-client.html.

Подскажите пожалуйста знающие люди как подружить этот пример с TThread


 
clickmaker ©   (2011-02-16 01:31) [1]

а нужно именно в потоке?
InternetOpen(...,INTERNET_FLAG_ASYNC) не поможет?


 
TempUser142   (2011-02-16 17:17) [2]

Без потока никак.. INTERNET_FLAG_ASYNC результата никакого не дал..



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

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

Наверх




Память: 0.47 MB
Время: 0.006 c
2-1297771744
well
2011-02-15 15:09
2011.05.22
TTreeView как выделить несколько узлов?


2-1297759890
Scott Storch
2011-02-15 11:51
2011.05.22
как обойти ограничение в 2 Гб. для стримов?


2-1297406686
ВашеИмя
2011-02-11 09:44
2011.05.22
Взаимодействие форм


2-1297509771
Pavel
2011-02-12 14:22
2011.05.22
Каким образом можно узнать, что форму начали двигать?


6-1237262725
alshtam
2009-03-17 07:05
2011.05.22
вопрос по Indy