香港虚拟主机
本站公告
新闻资讯
虚拟主机帮助
域名帮助
服务器帮助
邮箱帮助
建站帮助
网站推广帮助
VPS帮助
特色主机帮助
网站备案专题
会员帮助信息
代理帮助信息
成功案例
我司获香港虚拟主机排行榜十…
香港虚拟主机金秋促销活动正…
百度整治给SEO带来了新的希望
百度同时收录网站带WWW和不带…
百度对原创内容的判断标准 如…
如何建设网站 网站建设三步曲
如何挑选老域名 老域名有那些…
域名常见故障与分析
虚拟主机基本参数介绍
交换链接的技巧 谈一下选择交…
您现在的位置: 江南数联 >> 帮助中心 >> 建站帮助 >> 正文

ASP:ActiveX不能创建Scripting.FileSystemObject对象解决办法

  作者:admin    来源:本站原创    点击次数:29     更新时间:2012-9-26 7:17:52  
     
 
关注石头有礼
 
 

ASP:ActiveX不能创建Scripting.FileSystemObject对象解决办法

关于ActiveX不能创建Scripting.FileSystemObject对象的类似问题,大体上解决办法都是类似的,主要是思想要清晰:首先考虑组件注册问题,其次是组件权限问题,如果服务器配置没有问题的话,那就仔细检查一下你的程序源码吧

今天遇到个问题,一个ASP网站生成静态页面时报错:

Microsoft VBScript 运行时错误 错误 '800a01ad'
ActiveX 部件不能创建对象: 'Scripting.FileSystemObject'

其实这个问题比较常见,报错原因是服务器不支持FSO组件。像风讯、科汛、动易这些ASP的主流CMS系统中经常会遇到这种情况,因为他们都是采取静态生成机制的,需要FSO组件支持。在开始之前,你有必要先用ASP探针测试下服务器对FSO组件的支持情况,通常我们使用的是Windows 2003系统的服务器。
下面说下我的具体解决思路,对每一种可能会产生报错的原因都作了相应分析,希望对你能有所帮助。

1)“scrrun.dll”文件未注册。行C:\WINDOWS\system32文件夹下,看下有没有scrrun.dll文件。如果没有,就去系统安装目录i386文件夹中拷贝一个过来。接下来,开始菜单->运行以下命令注册一下FSO组件即可:
regsvr32.exe %windir%/system32/scrrun.dll这样就开启了服务器对FSO组件的支持,如果你想关闭FSO组件,则运行以下命令:

regsvr32.exe /u %windir%/system32/scrrun.dll正常到这里,你的问题就可以解决了。

2)如果还不行,检查一下浏览器是否禁用了ActiveX控件。正常是不会的,除非是服务器,安全级别才会严格限制。如果存在这种情况,那就把浏览器的安全级别调整为中低即可。
3)你的服务器本身就不支持FSO组件。
4)考虑权限问题。依次执行如下操作:
开始菜单->运行->regedit->确定,依次找到HKEY_CLASSES_ROOT\Scripting.FileSystemObject,右键“权限”,加上Everyone、Internet来宾帐号(IUSR...)用户的权限,重启IIS即可解决。
5)附:服务器不支持Scripting.Dictionary组件的解决办法
通过以上几步就能完美解决ActiveX创建对象失败的问题了。如果还出现不支持Scripting.Dictionary组件的问题,解决办法也是类似的,参考第一步执行regsvr32.exe %windir%/system32/scrrun.dll命令即可。如果还没解决,则考虑权限问题,可以参照第四步到注册表中给这个对象添加下权限即可。举一反三,如果再遇到类似问题的话,知道怎么去解决了吧!
6)附:Server.CreateObject 失败解决办法。我们执行程序的时候可能会提示类似错误,如下:
服务器对象 错误 'ASP 0177 : 800401f3'
Server.CreateObject 失败
/include/test.asp,行38打开test.asp,检查源码38行附近,看下创建对象的写法有没有错误,标准写法应该是:

<% Set fso = Server.CreateObject("Scripting.FileSystemObject") %>
这种情况大多是程序员粗心导致的。其实,Scripting.FileSystemObject组件是可以改名的,这样会增加服务器的安全性,我们可以在注册表中更改,方法如下:
开始菜单->运行->regedit->确定,依次找到HKEY_CLASSES_ROOT\Scripting.FileSystemObject,右键“重命名”,再执行第一步注册下scrrun.dll文件即可。注意一点,你写程序的时候要以这个新名称创建对象,否则会报错。7)附:IIS自带组件
有没有发现一点,这些问题的原因都出在IIS自身组件身上,下面提供下常见的IIS组件,以供参考:
MSWC.AdRotator
MSWC.BrowserType
MSWC.NextLink
MSWC.Tools
MSWC.Status
MSWC.Counters
SWC.PermissionChecker
WScript.Shell
Microsoft.XMLHTTP
Scripting.FileSystemObject
ADODB.Connection小结一下,关于ActiveX不能创建Scripting.FileSystemObject对象的类似问题,大体上解决办法都是类似的,主要是思想要清晰:首先考虑组件注册问题,其次是组件权限问题,如果服务器配置没有问题的话,那就仔细检查一下你的程序源码吧!

本章关健词:江南数联 域名注册 海外虚拟主机 G享虚拟主机 国内虚拟主机 企业邮箱 网站建设 自助建站 400电话申请 微聚商

 
  版权申请:ASP:ActiveX不能创建Scripting.FileSystemObject对象解决办法出自江南数联dns06.com未经授权请勿转载!  
 
  • 上一篇帮助:

  • 下一篇帮助:
  •  
         

    扫一扫关注公众号有礼
    Copyright@2004-2015 江南数联 版权所有未经授权请勿复制!
    《中华人民共和国增值电信业务经营许可证》ISP证编号:皖B2-20080036 湘B2-20160056
    公司全称:永州石头网络技术有限公司(运营部)
    地址: 中国·湖南省永州市育才路158号 服务热线:400 616 9260
    安徽公司:安徽仁科信息技术有限公司 地址:合肥万和新城广场A-608 
    关注词:网站空间虚拟空间空间域名域名空间域名主机网站空间哪家好网站空间多少钱