« 上一篇下一篇 »

msxml3.dll 错误 80070005 拒绝访问的解决办法

用Msxml2.XMLHTTP替换掉Microsoft.XMLHTTP,我本来用的就是Msxml2.XMLHTTP的 
继续搜索。找到最终解决方案应该是用Msxml2.ServerXMLHTTP 
先前也搜到这个结果,由于大意,没有及时注意到,以下是搜索过程找到的有用的相关资料。 

代码如下: 

代码如下:

PostUrl=http://www.xxx.com/ 
Server.ScriptTimeOut=20 
Set oXMLHttp = createObject("Microsoft.XMLHTTP") 
Call oXMLHttp.Open("get", PostUrl, false) 
Call oXMLHttp.Send("") 
sHtmlStr = oXMLHttp.responseBody 
Set oXMLHttp = nothing 


初步判定可能是打开的页面有跳转的原因,解决办法是用 
MSXML2.ServerXMLHTTP 
替换掉 
Microsoft.XMLHTTP 
即可解决。 

另外在CSDN上找到这么一段代码 

代码如下:

ServerURL=PostUrl 
Set Mail1 = Server.CreateObject("CDO.Message") 
Mail1.CreateMHTMLBody ServerURL,31 
AA=Mail1.HTMLBody 
Set Mail1 = Nothing 
Response.Write AA 


试了一下,也可以用,拷过来收藏 



代码如下:

<% 
' 定义变量 
Dim objXmlHttp 
Dim strHTML 

'这是Msxml3.0中的一个稳定版本. 
'使用Msxml2.ServerXMLHTTP,不使用Msxml2.XMLHTTP 
Set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 

' 如果你发现以下错误 
' msxml3.dll error '80070005' 
' 存取被拒绝. 
' 可能是上网时使用了代理产生了错误 
' 使用 proxycfg.exe 工具. : 

' proxycfg -d 
' 检查是否采用了代理上网 
' 同时可以参看这个帖子: http://www.asp101.com/forum/display_message.asp?mid=51841 


' 这个版本太旧且不稳定 
'Set objXmlHttp = Server.CreateObject("Msxml2.XMLHTTP") 

' 现在我们开始发送请求. 
' 套用微软的话来讲: 初始化一个请求,并且指定该请求的方法(get,post等等), 
' URL, 和权限验证信息(用户名,密码,等等)。 
' 格式: 
' .open(bstrMethod, bstrUrl, bAsync, bstrUser, bstrPassword) 
'objXmlHttp.open "GET", "http://www.yahoo.com", False 
objXmlHttp.open "GET", "http://www.yahoo.com", False 

' 以直接的方式发送请求出去. 
objXmlHttp.send 

' 打印返回状态: 
Response.Write "Status: " & objXmlHttp.status & " " _ 
& objXmlHttp.statusText & "<br />" 

' 获取响应返回的文本. 
' 这个对象本身是用来操作XML的,所以具备以下属性: 
' responseBody, responseStream, 和 responseXML. 
' 但是我们现在只需要文本信息 
strHTML = objXmlHttp.responseText 

' 但这个对象实例不再使用时,需要清除这个对象实例. 
Set objXmlHttp = Nothing 

' 现在我们要做的就是显示我们获取到的HTML. 
' 首先看浏览器解释的效果 
' 然后显示其源码 
' 下面的类似<h1>s 和 <table>s只是为了展现获取到的内容,本身不属于获取的内容. 
%> 

<h1>Here's The Page:</h1> 
<table border="1" bgcolor="#FFFFFF"> 
<tr><td> 
<%= strHTML %> 
</td></tr> 
</table> 

<br /> 

<h1>Here's The Code:</h1> 
<table border="1" bgcolor="#FFFFFF"> 
<tr><td> 
<pre> 

<%= Server.HTMLEncode(strHTML) %> 
</pre> 
</td></tr> 
</table>