使用DCOMConnection控件不能发现其他机器上的应用程序服务器,而SocketConnection控件却可以,有谁知道原因?(100分)

  • 主题发起人 浪边人
  • 开始时间

浪边人

Unregistered / Unconfirmed
GUEST, unregistred user!
应用程序服务器和DCOM的设置均无问题。
使用DCOMConnection控件不能发现其他机器上的应用程序服务器,
而SocketConnection控件却可以。应用程序服务器运行在Windows 98中。
 
还是配置的问题,你确信应用程序服务器上的DCOM配置没问题吗?
 
是否在一个域内?
 
DCOMConnection虽然不能发现其他机器上的应用程序服务器,但你可以手工指定服务器的
GUID码,只要你的服务器有开就可以connect得到,而且这样做法比较正确,详情可以看
DcomConnection的帮助。
 
参见http://www.delphibbs.com/delphibbs/dispq.asp?lid=527944
也许有用
 
在客户端注册服务器的_tlb文件,如:运行 tregsvr Project1_TLB
 
不管哪一种连接方式都不可能得出别的机器上的Com程序,包括SocketConnection,但
为什么又能得到了?这是因为在服务器中用了SocketServer,他得出了本机的Com接口,
然后再传到连接他的机器上,所以用SocketConnection得到别的机器上的应用服务器,是
通过服务器上的SocketServer得到的。
 
而Com是通过DCom连接,微软没有提供这个功能。所以DCOMConnection控件
不能发现其他机器上的应用程序服务器。
 
同意 chriszeng,或在客户端运行一次你的应用程序服务器,也会自动注册的。
 
你没有注册吧?
 
DCOMConnection是可以发现其他机器上的应用程序服务器的,要看你的DCOM配置是否正确!
其实你看看前面的帖子,关于DCOM配置的问题早已解决!
不过在设计程序时也无需去选择应用程序服务器呀!SERVER的名称你总知道吧!
同意liaoye007的意见。
还有,你的DELPHI版本是多少?不要告诉我是D4!那就白忙了!据我所知,D4是无法在设计
时出现其他机器上的应用程序服务器的!!!!
 
你的DCOMConnection设的不对,你应该用dcomcnfg配置一下。
方法:按开始菜单,点击运行,输入dcomcnfg即可。
 
我用的Delphi5.0.对wish_luo和liaoye007两位仁兄所说的直接在DCOMConnection中
输入ID的方法均试过了,还是不能发现其它机器上的应用程序服务器。
同一ID,在SocketConnection中直接输入可连接到对方的应用程序服务器,
而用DCOMConnection却不行。不知两位仁兄是否亲自试过在DCOMConnection中输入ID的
方法。另外对方机器的DCom配置检查过确实没问题。在DCom配置中是否还有其它需要
注意的请两位仁兄指教。
感谢其它朋友的关心,但诸位的各种办法都试过,还是没有找到解决办法。
如有哪位朋友在自己的机器上解决后可否将过程详细的说明一下。
当问题真正的解决后,我会将自己的礼物(大分)献给各位的。
 
用DCOM时,先配置好DCOMCNFG,然后在客户端先运行一次服务端应用程序,再运行客户端,我就是这样解决的
 
同时服务端要有客户端登录的用户名
 
问题还未完全解决,先给各位一点小意思吧,各位收好了.
 
我也碰到这样的问题n个客户端,n个服务器,受不了。
还有是不是在客户端运行状态一直得 DcomConnection.Connected := True;
设成False 后就是公文包了吧。
 
顶部