CInternetSession und IE7

Quero59

Mitglied
Moin zusammen,

Ich hab eine C++ DLL geschrieben (Visual C++), die über Internet den Zustand eines Geräteparks abruft. Dies kann auch mal ein Viertelstündchen dauern. Funktionert seit Jahren. Benutzt wird CInternetSession.OpenURL.

Seitdem sich draußen der IE 7 per Autoupdate verteilt, klappen alle langwierigen Abfragen nicht mehr, es wird nach 30 Sekunden die CInternetException geworfen, obwohl die Anfrage definitiv beim Webserver angekommen ist und er schon am arbeiten ist.

Hat jemand eine Idee, was der IE7 verstellt hat, was per default nun anders läuft? Der Phishingfilter ist deaktiviert.

Danke schonmal.
 
Ich hab grad gesehen, dass der Thread noch offen ist.

Wenn man den IE7 installiert, ist der default Timeout tatsächlich 30 Sekunden. Vorher war er unendlich. Der InternetExplorer und andere Browser setzen diesen Timer natürlich selbst auf größere Werte. Wer SDK-Funktionen nutzt und sich bisher nicht darum gekümmert hat, muss das nun nachziehen:

CInternetSession iSession ("MeineSession");
DWORD dwTimeOut = 0; // 0=unenendlich
iSession.SetOption (INTERNET_OPTION_RECEIVE_TIMEOUT, &dwTimeOut, sizeof(dwTimeOut), 0);
 
Zurück