使用ASPJPEG出现0177 800401F3 错误的解决办法

 更新时间:2008年06月12日 14:58:12   作者:  
操作系统:Windows2000,IIS5 出现症状:使用ASPJPEG时执行Server.CreateObject("Persits.Jpeg") ASP错误提示: Server 对象 错误 'ASP 0177 : 800401f3' Server.CreateObject 失败
无效的 ProgID。 若要获取关于此消息的更多的信息,请访问 Microsoft 联机支持站点: http://www.microsoft.com/contentredirect.asp 。 

问题分析:
提示Server.CreateObject 失败 ,一定是组件问题,应该从组件上着手

解决过程:
重新启动IIS,未成功;  
重新安装ASPJPEG,未成功;  
在ASPJPEG.DLL目录执行Regsvr32 aspjpeg.dll,提示注册成功,运行依然失败;  
换ASPJPEG另外一个版本安装,运行失败;  
尝试在组件服务中注册此组件,运行失败;  
考虑是否是其他问题,想到了组件权限,给aspjpeg.dll加上Everyone完全控制,重启IIS,运行继续失败;  
将IIS的匿名用户IUSR_****更改成administrators组的用户,输入用户密码,重启IIS,执行成功。

 
本次问题解决了一半,ASPJPEG已经可以使用,但这样解决不能彻底解决问题,还会造成安全问题。本地测试可以使用此方法,不能在服务器等安全性需要较高的地方使用,继续寻找解决办法
该方法的缺点:赋予了IIS的匿名用户是管理员组成员后,IIS的访问用户就是以管理员身份登陆,在服务器环境下,客户端用户就可以很容易的控制服务器甚至破坏服务器。
新的解决办法:
点击“开始”-“运行”,输入“regedt32”,点击确定运行该注册表编辑器; 
依次点击“HKEY_CLASSES_ROOT”、“Persits.Jpeg”,点击编辑器窗口工具栏上“安全”-“权限”,添加“IUSR_XXXX”用户,选择“读取”权限,点击确定; 
依次点击“HKEY_CLASSES_ROOT”、“Persits.Jpeg.1”,点击编辑器窗口工具栏上“安全”-“权限”,添加“IUSR_XXXX”用户,选择“读取”权限,点击确定; 
点击关闭按钮推出注册表编辑器; 
重启IIS; 
此时访问asp探针,ASPJPEG项已经显示支持,问题圆满解决。

相关文章

最新评论