当前位置:编程学习 > asp >>

有人用ASP操作过SQLDMO.sqlserver吗?求教。。

<%
Dim DMOserver
Set DMOserver=Server.Createobject("SQLDMO.sqlserver")
Response.Write TypeName(DMOserver)
%>
为什么这段代码在本地运行正常,传到服务器就出现下面这样的错误啊?

Server 对象 错误 'ASP 0178 : 80070005'

Server.CreateObject 访问错误

/dbtools/1.asp,行 20

检查权限时,对 Server.CreateObject 的调用失败。拒绝对此对象的访问。

补充:有一点点作用。。经过重新测试,原来是SQL2000没打补丁,重新打上补丁或找个SP4的SQLDMO.dll放在除系统盘外的其他盘里注册,给everyone读的权限就可以了。谢谢!
		
追问:有一点点作用。。经过重新测试,原来是SQL2000没打补丁,重新打上补丁或找个SP4的SQLDMO.dll放在除系统盘外的其他盘里注册,给everyone读的权限就可以了。谢谢!
答案:解决方法:

1. 调用"server.createObject("mssearch.application")"的时候发生错误,解决如下:

开始->运行->dcomcnfg

找到"mssearch"(这个名称取决于你调用的Object是什么),然后右键->Properties->security把三个权限都给everyone即可,其实第一个即可.


2. 出现上述问题时,原因确实是权限的问题。

一种解决办法是修改IIS的匿名访问的权限。

第二种最简单的办法就是将你的组件换个地方注册,特别是不要放到桌面或C盘的(系统盘)的某些特殊目录下注册;而应该放到如D,E等盘。原因是因为通常你的IIS所使用的帐号都是系统权限较低的帐号,如果你是以自己的帐号登录,那么桌面的访问的权限可能比IIS的帐号权限高。

上一个:请帮忙解决一个ASP里 MSGBOX的问题
下一个:用ASP对指定的ACC数据库添加表格

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,