一个简单的多层分布式程序(100分)

  • 主题发起人 主题发起人 plf22
  • 开始时间 开始时间
P

plf22

Unregistered / Unconfirmed
GUEST, unregistred user!
我建立了程序服务器,连接DBDEMO数据库,在本机可以用客户端调用,然后我把服务器程序放到网络上另一台机器上(装了Delphi6),并运行,察看后知道已注册。我在我的机器上设置了客户端的Dcomconnection1的computername为那台机器,结果在servername中看不到服务器程序,请问是什么原因?我是一个新手,第一次做多层分布式程序,请大家多多指教!
 
需在服务端设置DCOM服务访问权限,步骤为:
1.运行Dcomcnfg,组件服务->计算机->我的电脑->DCOM配置,找到你的服务,点击点击右键->属性->安全性->设置启动权限、访问权限、配置权限为自定义设置加入客户端用户名,标识设置中设运行用户帐户为交互式用户帐户。另在计算机设置中设默认属性选中在此计算机启用分布式COM,设置默认身份验证级别为连接,默认模拟级别为模拟。
 
你说的我也设置了,就是没有把用户帐户设成交互式的,另外计算机设置中的设默认属性在哪里设置?
 
建 议不要用dcomconnetion
用tsockconnection来连接。不用配置。
不过要在服务器上先把scktsrvr.exe文件先运行起来.这个文件在delphi的目录下有。
 
为什么不用DCOM,能说说原因吗。我们的项目刚刚开始,还在选择过程中
 
另外计算机设置中的设默认属性在哪里设置?
组件服务->计算机,右击选属性->默认属性->设置默认身份验证级别及模拟级别。
to fly555:用Dcomconnection的最大好处就在于在服务端未启动服务而客户端却调用服务时,计算机会自动启动服务。用sockconnection则要先运行scktsrvr.exe,所以用dcomconnection还是比较好的选择
 
plf222:
如果就是你一个人一起开发的话,
最好用sockconnetion,
你想想,你在家里把程序写得很好,到了客户那因为配置不起来,
还不把你急死。
如果是一个小团队的话,大家一起帮忙还好些。
用sockconnection计算机也会自动启动服务.
 
我想知道哪种连接的性能好一点?
 
改用sockconnection好了,dcom设置起来太麻烦。看看下面的讨论吧
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1938942
 
我们目前是团队开发,可能会使用DCOM,大家有没有好一点的例子?
 
我按照各位大侠说的又作了一遍,但是仍然提示访问拒绝,那台机器装得是WINDOWS XP HOME,我估计和这有关,请问还有没有需要注意的地方?请为各位赐教!
 
从2000开始,ms对dcom的支持就在减少,xp就更差了,不用sockconnection的话用
com+吧
 
那我改用CORBA吧,我们的服务器打算用UNIX
 
记得在客户端得运行服务器,且要同步更新,
我这用的就是windows2000下的Dcom,数据库服务器是lunix,所以没什么为这担心的
 
李维的《Delphi 5.x 分布式多层应用系统篇》7-27页讲的很清楚
socket连接速度比Dcom快,但执行效率比Dcom低
 
多人接受答案了。
 
后退
顶部