系统环境:Windows Server 2003 Enterprise Edition + SP1
错误现象及解决过程:
-
多次使用regsvr32 CMS.dll (CMS.Dll 为我公司开发的一套SiteManager-CMS软件中的一个组件),系统提示注册成功,但运行时还是产生以下错误。
-
运行客户端程序,显示 ASP 0177:800401f3 ,Server.CreateObject 等错误信息,一定是组件注册的问题。
-
尝试在组件服务中注册此组件,开始,管理工具,新建应用程序(步骤略),想要通过组件服务注册组件的朋友,可以在我以前的BLOG中找到 http://blog.csdn.net/Jaron/Gallery/20855.aspx (图解)
-
再次运行ASP端程序,仍然显示同样的信息。
经过尝试,解决此错误的方法有两种。 第一种方法,运行 regedt32 找到 HKEY_CLASSES_ROOT/SiteManager.common (SiteManager.Common为组件中的一个类名称),右击选择权限,添加 IUSR_XXXX 完全控制权限即可(测试时,我同时添加了 Network Service 用户完全控制的权限,大家可以试一下)。第二种方法是一种不安全的方法,因为我是在本地测试此应用程序,所以将IIS的匿名运行用户改为了Administrators组帐户,此错误现象即消失。至于如何产生此类型的错误,还不是很清楚。