msxml3.dll 错误 '800c0005'系统未找到指定的资源,分析及解决 错误信息msxml3.dll 错误 '800c0005' 系统未找到指定的资源
msxml3.dll 错误 '800c0005' The system cannot locate the resource specified.
检查权限时,对 Server.CreateObject 的调用失败。拒绝对此对象的访问。
原因及解决方案
- 服务器不支持xmlhttp组件
解决:在服务器上安装MSXML以支持XMLHTTP组件
- msxml3.dll文件损坏或访问该文件权限不足,可能的错误信息如下:
Server 对象 错误 'ASP 0178 : 80070005'
Server.CreateObject 访问错误
/clsZDThief.asp,行 102
检查权限时,对 Server.CreateObject 的调用失败。拒绝对此对象的访问。
解决:
文件损坏:从光盘提取或同版本系统下拷贝msxml3.dll(%windir%\system32下)文件进行替换,需要关闭调用些文件的服务,如IIS等
权限不够:%windir%\system32\msxml3.dll右键-属性-安全,添加Users用户组的读取和运行、读取权限
- 防火墙或杀毒软件禁用了相应的端口(如Mcafee\ISA 2006\),可以尝试关闭防火墙或杀毒软件后来确认是否属于此问题
解决:
不同的软件设置不一样,这里以Mcafee封锁msxml3.dll为例,查看访问保护日志有如下信息
[8.5i-windows2003-iis6]2008-5-14 16:08:14 被端口阻挡规则阻挡 c:\windows\system32\inetsrv\w3wp.exe 通用最大保护:禁止 HTTP 通信 220.181.3.20:80
[8.0i-windows2000-iis5]2006-9-22 8:16:27 被端口阻挡规则阻挡 DLLHOST.EXE(或inetinfo.exe,视'应用程序保护级别'而定) 禁止从万维网上下载 222.*.*.*
知道了原因那么解决起来是很简单的
对于IIS5:
在此规则上添加排除进程'DLLHOST.EXE或inetinfo.exe问题即解决
对于IIS6:
在此规则上添加排除进程'w3wp.exe'问题即解决
- DNS解析错误
检查网络可否正确进行DNS域名解析
- IP筛选设置
即是否开放通讯端口,不知MSXML使用哪个端口
- 对方资源失效
比如采集某条信息时,对方该条信息不存在导致程序终止错误,也可能是这种情况。这种错误都是出现在调用了 xmlhttp 组件的 Open方法,接着再用Send方法后造成的。当open方法的的 url 参数无法访问时,就会造成 8000005 错误。并且一旦产生这种错误,就会导致应用程序终止,无法继续操作。
Send 方法产生错误的时候,ReadyState的值或许为4,但Status的返回值就一定不是200的。尝试将程序代码的属性.Readystate=4改为.Status=200试试
- IE安全选项等级设置过高
将安全等级设成中或低,在受信任网站里回入您要获取的域名
- 重装注册msxml3.dll组件或重装安装
regsvr32 msxml3.dll
下载msxml3.msi安装包:http://www.microsoft.com/downloads/details.aspx?FamilyID=28494391-052b-42ff-9674-f752bdca9582&DisplayLang=zh-cn
如果你遇到MSXML组件的其它故障,请留言让我与你一起商讨解决之道。
以下内容为SEO,仅搜索引擎适用,请您跳过。
regsvr32 msxml3.dll,msxml3.dll注册失败,无法注册msxml3.dll,xp msxml3.dll下载,msxml3.dll错误,msxml3.dll拒绝访问,无法加载msxml3.dll,msxml3.dll 80070005,msxml3.msi,msxml3.dll挂马