Solved

msxml3.dll error '80072ee2'  - The operation timed out

Posted on 2007-04-05
3
2,231 Views
Last Modified: 2008-01-09
This script has been running fine up until now (of course). I'm getting this error:

msxml3.dll error '80072ee2'

The operation timed out

/inv.asp, line 60


Function Mailbody
'on error resume next  
Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")  
' Call the remote machine the request  
objXML.open "GET", SiteRoot & "inv.asp?whse=" & varWhse, False
objXML.SetRequestHeader "Content-Type", "text/html"
objXML.send()  

' return the response  
' clean up  
Mailbody = objXML.responsetext  
Set objXML = Nothing  
End Function  


Should I set varAsync = TRUE and do a loop:

objXML.open "GET", SiteRoot & "inv.asp?whse=" & varWhse, True
Do While objXml.readyState <> 4
DoEvents ???
Loop

as suggested at: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=362416&SiteID=1

Not sure how to make this work again....
0
Comment
Question by:globalwm
  • 2
3 Comments
 
LVL 16

Expert Comment

by:golfDoctor
ID: 18861675
If you haven't changed anything, try rebooting first.  
0
 
LVL 1

Author Comment

by:globalwm
ID: 18861725
I had installed MSXML 6.0 and tried using:

Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")

- no change. Then I changed the line to:

Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP.4.0")

- no change.


I then rebooted the server - and it seems to have worked.


Can you tell me how to use Async = TRUE so it will wait for a response?

The open() method has varAsync parameter (third one) set to False which makes your send() call synchronous.  That means send() won't return until either entire response has been received or time out is detected.

You can set the parameter to True, call send() and enter into a loop to check for response.  You can add your own logic to decide what to do if you do not receive response within whatever amount of time you want to wait.

Since client code should not rely on the health of network connection (whether it's local network or Internet), you should not use synchronous send() method.  Always use asynchronous send() so that you can provide alternative experience to users in case something goes wrong.

0
 
LVL 16

Accepted Solution

by:
golfDoctor earned 500 total points
ID: 18861742
Reboot solved your original question didn't it?

Leave Async as false.
0

Featured Post

Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I recently decide that I needed a way to make my pages scream on the net.   While searching around how I can accomplish this I stumbled across a great article that stated "minimize the server requests." I got to thinking, hey, I use more than one…
This demonstration started out as a follow up to some recently posted questions on the subject of logging in: http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_28634665.html and http://www.experts-exchange.com/Programming/…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question