我发现下面的代码位已经改变了我的用途,唯一的问题是如果网站没有给出失败的返回或成功的代码永远不会结束。 (如果网站挂IE)定时执行一个函数/命令
有没有什么办法可以在“HttpRequest.send”命令后设置超时。所以如果30秒后没有响应,它会将其标记为失败并继续前进?
Set HttpRequest = CreateObject("Msxml2.XMLHTTP")
HttpRequest.open "HEAD", "http://example.com/", False
On Error Resume Next
HttpRequest.send
If Err.Number <> 0 Then
WScript.Echo "Error : " & Err.Number & ": " & Err.Description
Else
WScript.Echo "HTTP status: " & HttpRequest.status & " " _
& HttpRequest.statusText
End If
欢呼
哦,这是VBA
亚伦
它似乎不能在此设置超时。如果网站没有正确响应,是否有人会有一个解决方案在大约30秒后超时? – DevilWAH 2012-02-24 13:15:52
您是否看到http://www.dailydoseofexcel.com/archives/2006/10/09/async-xmlhttp-calls/? – Fionnuala 2012-02-24 14:30:38