我正在着手开发VB6+Sql的进销存系统,因为客户为十一个分公司的集团,且处在不同子网内,考虑到数据安全性,所以想采用服务器端COM+存放SQL登录帐号,但是运行结果显示“70 权限的拒绝”,请高手指点!COM+组件结构:
sqlidpwd.vbp (activex dll)
|
|
zh.cls
|
|MySqlUserid()
|
|MySqlpwd()
代码如下:
Public Function MySqlUserid() As String
MySqlUserid = "sa"
End Function Public Function MySqlPwd() As String
MySqlPwd = "okletsgojj"
End Function客户端程序发下:
Private Sub Form_Load()
Set ObjUser = CreateObject("sqlidpwd.zh", "10.1.254.211")
TxtUserId = ObjUser.mysqluserid
TxtPwd = ObjUser.mysqlpwd
Set ObjUser = Nothing
End Sub
服务器端已经成功注册sqlidpwd.dll及sqlidpwd.lib,且所导出msi文件已经在客户端安装成功,为什么还会出现以上问题,请高手指点
sqlidpwd.vbp (activex dll)
|
|
zh.cls
|
|MySqlUserid()
|
|MySqlpwd()
代码如下:
Public Function MySqlUserid() As String
MySqlUserid = "sa"
End Function Public Function MySqlPwd() As String
MySqlPwd = "okletsgojj"
End Function客户端程序发下:
Private Sub Form_Load()
Set ObjUser = CreateObject("sqlidpwd.zh", "10.1.254.211")
TxtUserId = ObjUser.mysqluserid
TxtPwd = ObjUser.mysqlpwd
Set ObjUser = Nothing
End Sub
服务器端已经成功注册sqlidpwd.dll及sqlidpwd.lib,且所导出msi文件已经在客户端安装成功,为什么还会出现以上问题,请高手指点
数据服务器为WIN2003
客户端为WINXP
能否说得具体一点?给个小例子如何?
闲人的方法我也用过,在Win2000(S)+Win2000(P)下一直调不过,人笨没办法
哪个兄弟过了的话,提示提示啊!
2、打开“控制面板/管理/组件服务”,在“COM+应用程序”下利用“COM+应用程序安装向导”创建一个空的COM+应用程序,名称为“COMTEST”。
3、在“COMTEST”下,新建“组件”,在“组件安装向导”中,选择“安装新组件”(注意:不要使用“导入已被注册的组件”),然后将生成的dll及tlb都添加进来(两个文件都要!),完成。
4、右击“COM+应用程序”上方的“我的电脑”,选择“属性”,然后在“属性”对话框中的“默认属性”页下,将“默认身份验证级”改为“无”,将“默认模拟级别”改为“匿名”,然后在“默认安全设置”页下的默认启动权限里添加"Everyone",确定。(这里是匿名关键之一)
5、在本地用户管理里启用Guest用户!(这就是有人说权限里设置了Everyone仍然无法访问的原因)
6、右击“COMTEST”,导出客户端的“应用代理”。注意:在导出对话框中,必须选择“应用程序代理”而不是“服务器应用程序”!并将导出的文件在客户机安装!
7、好了!现在就可以在客户端进行调用了,点击运行后第一次运行在数秒弹出希望看到的运行结果,在激活服务器的准备状态以后的运行通常都在半秒内响应完成!(注:VB状态下加垃圾机器)后记:本不打算公开方法 ^_^ ,但为感谢龙卷风以前对我问题的热心解答,所以.... 呵呵呵呵..
另附:有些时候程序不能运行不一定是程序的问题,尤其是与系统和网络相关的东西,多检查一下病毒、网络防火墙和系统权限一般都会有帮助的。 ^_^
不过是以前的事
也是在这里请教别人的
现在好长时间没有学习了
那篇文章不知在哪个目录中
我找到在贴匿名com
我也成了
好像在windowspro 客户端上通过了
记得不太清楚
应该行
再导出一个注册表分支文件
再在其他的机子上导入
也不是匿名的
不好意思,最近一直没上CSDN,现在才看到。
我今天用虚拟机装了98和WIN2000来测试,都能正常使用。
服务器为WIN2000AS,客户端WIN98和2K都试过了,不能访问跟客户端平台应该没有关系的。