URLDownloadToFile останавливается, если ограниченная пропускная способность в VB 6.0 - PullRequest
1 голос
/ 20 марта 2012

Я использую URLDownloadToFile для загрузки файлов из Интернета в VB 6.0.

Проблема в том, что если я ограничу пропускную способность сети, мое приложение остановится, когда я начну загрузку.

Я использую обратные вызовы, чтобы проверить ход загрузки и время ожидания, но когда мое приложение останавливается, мои методы обратного вызова даже не запускаются.

Я также использовал таймер VB для проверки хода загрузки, но этот таймер также не срабатывал, если мое приложение находилось в состоянии остановки.

Я хочу прервать загрузку, если сервер не отвечает, пожалуйста, предложите мне какое-нибудь решение для решения этой проблемы.

EDIT

Я решил эту проблему, используя AsyncRead в VB, AsyncRead изначально доступен в VB и может решить подобные проблемы. Следующая ссылка может помочь вам.

http://visualstudiomagazine.com/articles/2008/03/27/simple-asynchronous-downloads.aspx

1 Ответ

1 голос
/ 20 марта 2012

VB 6 не поддерживает многопоточность; Резьбовые объекты и программы VB 6 квартиры ограничены исполнением в STA (Single Threaded Apartment). Это означает, что ваш exe-файл может раскручивать столько потоков, сколько ему нужно, но одновременно может выполняться только один поток в квартире (без одновременного выполнения).

Вы можете создать видимый класс оболочки VB.Net COM и загрузить файл в отдельном потоке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...