Wpadłem w bagno i od kilku godzin nie mogę się sam wydostać, teraz dopiero wołam o pomoc.
Pobieram pliki z jednego serwera w wątkach, wszystko jest w porządku, gdy pobieram max 2 pliki jednocześnie, trzeciego już nie chce pobierać.
Prawdopodobnie kod zatrzymuje się na:
hURL:= InternetOpenUrl(hInter, PChar(tURL), nil, 0, 0, 0);
Nie mogę uporać się z problemem. Gdy mam na liście np. 12 plików i ustawię, by ssał 2 pliki jednocześnie to pobiera dobrze i pobierze z czasem te 12 plików, ale gdy nakażę mu ssać 3 pliki na raz to ssie tylko dwa, trzeciego nie tyka wcale (tzn. wątek się wykonuje i zatrzymuje prawdopodobnie na powyższej linii i stoi...).
Sprawdziłem, czy np. w firefoxie (i jDownloaderze) pobiorę jednocześnie np. 3 lub więcej plików i udaje się więc serwer chyba nie ogranicza ilości połączeń no i tu wysiadam. :-(
//
dziwne to wszystko, nie rozumiem w jaki sposób firefox, czy jdownloader nawiązują dowolną ilość z tym serwerem, a ja mogę max dwa :(
Dodałem do listy pliki z innego serwera (lepiej późno niż wcale) i pobierało mi i 4 pliki na raz (ale dwa z tylko z tego głupiego serwera, z innych dowolną ilość).
Zatem problem rozwiązany. Ale czy mógłby mi ktoś wytłumaczyć jakim cudem firefox i inne programy pobierają jednocześnie dowolną ilość plików? :/