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

Вниз

InternetOpenURL   Найти похожие ветки 

 
Mariks   (2008-09-03 20:37) [0]

помогите пожалуйста, пытаюсь читать файл:

hURL := InternetOpenURL(hSession, PChar(URL+source), nil, 0, INTERNET_FLAG_RELOAD, 0);

если файл большой (инет по мобилке), то через некоторое время трафика возвращает nil. мелкие файлы читаются нормально.
подумал может флаг какой где есть, но поискав ничего не нашел..


 
Сергей М. ©   (2008-09-03 21:21) [1]


> возвращает nil.


Да не трынди)..

Результат ф-ции не имеет указательный тип, а nil - это значение именно указательного типа.


 
Mariks   (2008-09-03 21:28) [2]

хм.. возвращает pointer

у меня так:
      hURL := InternetOpenURL(hSession, PChar(URL+source), nil, 0, INTERNET_FLAG_RELOAD, 0);
      if hURL<>nil then
      try
...

я в дебаггере смотрю в hURL - nil

hURL: HInternet;

как тогда правильно?


 
Сергей М. ©   (2008-09-03 21:37) [3]


> как тогда правильно?


Вот так:

Return Value

Returns a valid handle to the FTP, Gopher, or HTTP URL if the connection is successfully established, or NULL if the connection fails. To retrieve a specific error message, call GetLastError.


 
Mariks   (2008-09-03 22:46) [4]

угу. переписал код на if Assigned(hURL) .....

но все равно то же самое.
при чтении маленьких архивчиков всё ок.
но если читаю текстовый файл через некоторое время идет обрыв с ошибкой 12002.

пробывал использовать idHttp
тут блин другая ситуация - читает этот большой текстовый файл нормально, но на мелкие zip архивы вылеает с EIdHTTPProtocolException with message <html>

помогите пожалуйста, гугл не просветил, уже ума не приложу...


 
Сергей М. ©   (2008-09-03 22:56) [5]


>  с ошибкой 12002
</>

SysErrorMessage(GetLastError) что говорит ?


 
Mariks   (2008-09-03 23:05) [6]

SysErrorMessage(GetLastError)  возвращает пустую строку.

GetLastError возвращает   12002  -  The request has timed out.
http://kodu.neti.ee/~juri4/vfpplus/inet_31_ru.htm#12002

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


 
Mariks   (2008-09-03 23:31) [7]

или помогите как читать через IDHttp

 Http := TIdHTTP.Create(nil);
 Http.AllowCookies:= False;    
 Http.HandleRedirects:= true;
 HTTP.ProtocolVersion := pv1_0;
 HTTP.HttpOptions := HTTP.HttpOptions - [hoForceEncodeParams];

 try
   Http.Get(URL + source, tmpStream);
 ...

 вылетает с EIdHTTPProtocolException with message <html> ...
 при чтении файлов через скрипт сервера.
 тоесть на сервере php скрипт который и вызываю в source с параметрами.
 по параметрам скрипт возвращает нужный файл через обычный readfile($param)



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
3-1201092353
Rusl92
2008-01-23 15:45
2008.10.12
Картинки в БД


1-1200387243
Sour Smile
2008-01-15 11:54
2008.10.12
Перезапустить програмно COM+ сервер


15-1219314183
Vlad Oshin
2008-08-21 14:23
2008.10.12
Испортился DVD диск. Как можно попытаться скопировать?


6-1193938102
Жека
2007-11-01 20:28
2008.10.12
два потока. события, синхронизация


15-1219221670
начинающий
2008-08-20 12:41
2008.10.12
Лазерник не печатает