帮别人安装主页服务器,遇到了以下问题:
IIS 错误,返回信息:
服务器对象错误 'ASP 0177:800401f3'
server.createObject 失败.
无效的 ProgID
具体是在创建一个对象的时候失败,可是我已经正确注册这个组件,并且返回注册成功;这个主页模板,我在别的地方用着很正常,可以确定是系统问题,检查注册表,组件也是写了注册表的,真是搞不明白。于是上网查了半天资料,方法归结有以下几种:
1、检查dll权限,应设置为iuser...或everyone访问;
2、检查filesystem组件权限,
HKEY_CLASS_ROOT/Scripting.FileSystemObject
鼠标右键,选择权限,加入user...和everyone
3、将IIS的匿名用户iuser...更改为administrator组用户,加入用户密码,重启IIS;
4、安装SP4;
5、注册Fso组件 scrrun.dll:
regsvr32 scrrun.dll
6、安装IE6;
7、安装 microsoft VM插件;
8、控制面板-〉管理工具-〉组件服务-〉DCom配置-〉注册组件-〉选中要注册的组件-〉属性-〉安全-〉访问权限-〉加入everyone;
9、修复ie,重新注册以下几个dll:
mshtml.dll;shdoclc.dll;jscript.dll;sxs.dll;usernv.dll;shdocvw.dll;scrrun.dll
令人遗憾的是,以上方法均不能解决问题,因为服务器采用的是fat32的文件系统,根本就不能设置权限。最后要求对方将服务器重新安装成ntfs格式,最终解决问题。
由此推测:fat32下的普通权限不足以让everyone用户运行有写组件,还是需要改为ntfs格式的,并且赋予everyone权限。