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

Вниз

Не получаеться остановить поток   Найти похожие ветки 

 
Фёдор Мегатронов   (2004-08-19 20:39) [0]

Вобщем в потоке у меня качаеться файл из инета.
И идёт проверка на terminated.

закачка идёт пока не кончился фаил или пока не terminated.

На главной форме есть кнопка "Остановить"

с кодом
ShowMessage("Процесс приостановлен");
DThread.Terminate;

Когда я нажимаю на эту кнопку во процессе закачки, то вижу

сначала надпись "Процесс приостановлен" а за тем исключение: EAccessViolation по такому-то адресу.

В потоке после проверки на terminated у меня сделаны и InternetCloseHandle(hURL) и InternetCloseHandle(hSession);

Вот я не могу разобраться в чём проблема.

Может быть останавливать поток в котором открыта инет сессия нужно как-то по другому ? потому что в других прогах с потоками всё работает отлично.


 
KSergey ©   (2004-08-19 20:51) [1]

Ну приведенного кода явно очень мало.
А вообще - отладчик в зубы - самый верный ход.
Предполагать можно что угодно: от неинициализированности DThread до фиг знает чего ;)
А может с этими InternetCloseHandle вообще не чисто в части потоков? Хотя сомнительно..


 
Фёдор Мегатронов   (2004-08-19 21:09) [2]

поток инициализирую так

DThread := ThreadClass.Create(true);
DThread.Priority := tpLower;
DThread.Resume;

_

чего не хватает ? всё напишу


 
KSergey ©   (2004-08-19 21:14) [3]

Ну тогда отладчиком полазить по ветке, где ловится флаг Terminate...



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
14-1092725104
CRACKISH
2004-08-17 10:45
2004.09.05
ADO?


4-1089807719
BVV
2004-07-14 16:21
2004.09.05
Как разрушать чужие окна?


3-1092219346
Алексей
2004-08-11 14:15
2004.09.05
Подключение программы к запароленным таблицам


14-1092908033
Ega23
2004-08-19 13:33
2004.09.05
Зацепило сильно...


1-1092727923
Cosinus
2004-08-17 11:32
2004.09.05
Корректное создание и вывод сообщений об исключительных ситуациях