Timeout onbekend voor object: Microsoft.XMLHTTP

Status
Niet open voor verdere reacties.

Sander32

Gebruiker
Lid geworden
26 jul 2012
Berichten
65
Beste programmeurs,

Ik ben de inhoud van een webpagina aan het inlezen echter kan er websites zijn welke zware bestanden gelinkt hebben aan betreffende website.
Hierdoor blijft mijn progamma hangen.
Het komt niet al te vaak voor maar de schoonheidprijs verdien het zeker niet.
Een timeout zou ideaal zijn echter op het internet kom ik geen oplossingen voor VBA tegen.
Wie o wie heeft dit probleem eerder aangepakt of ziet meteen wat ik verkeerd doe?
Zodra msXML.Send is doorlopen, loopt het vast.
Ik heb al codes gevonden wat na msXML.Send kwam zodat ik een timeout kon instellen maar zodra het eenmaal door de msXML.Send gelopen en het einde oefening.
Een url welke vast loopt is: http://www.deklerkbv.nl/nl

fh = FreeFile
Set msXML = CreateObject("Microsoft.XMLHTTP")
msXML.Open "GET", strUrl, False

msXML.setRequestHeader "Content-type", "text/xml"
msXML.Send
strpageContent = msXML.responseText
 
Ik zie dat er weinig respons is.
Heeft iemand een tip waar ik dit wellicht wel kans van slagen heeft?
Ik programmeer in MS Access en waarschijnlijk is dit niet de doelgroep waar dit soort vragen kennelijk gesteld moet worden.
 
Je kunt de vraag ook stellen in het VBA forum; dat is meer toegespitst op programmeer problemen, al zul je zien dat daar hoofdzakelijk Excel vragen aan de orde zijn.
De reden dat je weinig antwoord krijgt, is omdat het probleem waarschijnlijk niet vaak voorkomt bij de lezers :)
Je kunt dit nog eens proberen:

Code:
fh = FreeFile
Set msXML = CreateObject("Microsoft.XMLHTTP")
msXML.Open "GET", strUrl, False

msXML.setRequestHeader "Content-type", "text/xml"
msXML.Send
strpageContent = msXML.responseText
While msXML.Busy
    DoEvents
Wend
 
Beste Michel

Deze code zojuist getest maar het bleeft weer hangen.
Volgens mij zit je zeker goed echter zou je een escape willen hebben en dat je na zoveel seconden uit de while gaat.
In betreffende code bleef het gewoon hangen.

Ik had ergens deze code gevonden alleen ondersteunt VBA deze code niet:

While msXML.ReadyState <> 4
msXML.waitForResponse 1000
Wend

Heb jij nog een ideetje?
 
Readystate gebruik ik zelf zo:

Code:
     Do Until msXML.ReadyState = 4                  'READYSTATE_COMPLETE
          DoEvents
     Loop
 
Het blijft gewoon hangen.
Moet je niet in DoEvents iets anders instellen, bijv een form timer dat een timeout event heeft of iets dergelijks?
Ik moet telkens de applicatie met CTRL-ALT-DELETE sluiten.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan