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

Вниз

Почкму при запуске через D7 нет ошибки, а при обычном запуске ест   Найти похожие ветки 

 
STK ©   (2006-01-18 20:43) [0]

Проблема вот в чём:
При запуске этого кода в потоке:
 NetHandle := InternetOpen("Microsoft Internet Explorer 6.0", INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
 if nethandle <> nil  then //Assigned(NetHandle) then
   for i:= 17 to 20 do
     FileName := "C:\Save\"+url+".abc";
     url := "http://www.hlam.ru/"+url+".abc";
(*1*)      UrlHandle := InternetOpenUrl(NetHandle, PChar(Url), nil, 0, INTERNET_FLAG_RELOAD, 0);
       if Assigned(UrlHandle) then
         begin // UrlHandle правильный? Начинаем загрузку
// здесь идёт загрузка файла
           if UrlHandle <> nil then
         InternetCloseHandle(UrlHandle);  UrlHandle := 0;
           Close(f);
         end
       else begin
         if InternetCloseHandle(UrlHandle) = False then showMessage("Closehandle(urlhandle) = False")
         else showMessage("Closehandle(urlhandle) = True");
// UrlHandle неправильный. Генерируем исключительную ситуацию.
         showMessage("Нет Урлы");
         raise Exception.CreateFmt("Cannot open URL %s", [Url]);
        exit;
      end;
  end
 else begin
           showMessage("Нет сессии");
// NetHandle недопустимый. Генерируем исключительную ситуацию
//   raise Exception.Create("Unable to initialize Wininet");
//             break;
  end;
  if NetHandle <> nil then
  InternetCloseHandle(NetHandle); // закрываем сессию

Проблема в том, что если нет инет соединения, т.е. комп не подключен к инету, то в точке (*1*) UrlHandel = nil. И при закрывании программы возникает ошибка 1400 "Неверный дескриптор окна", как я понимаю это хендел типа создался, но закрыться с открытым хендлом прога не может.
Может мне просто проверить на присутствие инета сейчас, на время скачивания. Но как же быть если инет пропадёт во время самого скачивания? Если не понятно могу пояснить.
Но если есть инет то всё скачивается замечательно, без проблем.


 
STK ©   (2006-01-19 02:01) [1]

Да по ходу дела придётся самому тут ковырять.



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

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

Наверх




Память: 0.47 MB
Время: 0.049 c
2-1137568718
ZZZ
2006-01-18 10:18
2006.02.05
Как определить сер. номер...?


1-1136042407
SnupDog
2005-12-31 18:20
2006.02.05
ListBox - програмное выделение строчки


6-1130749046
DesWind
2005-10-31 11:57
2006.02.05
Ошибка при остановке Indy TCP Server


9-1124534029
FUNKy
2005-08-20 14:33
2006.02.05
GLScene для .NET


2-1137655225
СержК
2006-01-19 10:20
2006.02.05
Как просмотреть и обработать содержимое папки