用过MTS/COM+开发的高手请进....(200分)

  • 主题发起人 主题发起人 wolf1860
  • 开始时间 开始时间
W

wolf1860

Unregistered / Unconfirmed
GUEST, unregistred user!
建立运行在组件服务中的com+组件,客户端使用CreateRemote或Create方法创建instance获取端口,
调用一个简单的方法,同一台机器上没有任何问题,在远程机器(Base Client)调用则出现
"接口不支持"异常..前提角色设置安全验证都没有问题,服务器端的MSI在客户端也已经运行过,
联接过程中在组件服务窗中也可以看到组件在不停转动:证明已经找到服务器了.
请遇到过此类问题的高手指点迷津....
 
大半可能是安全验证问题,
1.远程的机器中登陆的用户不能在服务器能够认证的
2.如果服务上没有用户登录,且在COM组件服务的设置为采用交互式用户(指定用户名和密码)

祝好运
 
应该是安全配置问题。使用Dcom或DcomConnection等确实存在这个难题。
建议用SocketConnection连接,能很容易穿透防火墙。
 
我帮助你ding!
 
怎么是去年的问题?
我同意jabing和hxg的说法。我以前做的系统就是存在这个问题,害我们想了好久也没有想出比较好的方法,可能用SocketConnection会好吧,但听说不稳定。
 
根據我以住的開發經驗﹐這一定是COM+的安全機制問題引起的。即客戶機器需要有權限訪問你的AP Server。我們的做法是在主機上開立一個賬戶﹐然后在客戶端用這個賬戶登入﹗
 
这个问题我以前遇到过,我不认为一定是上面大家所说的安全问题所引起的;
简单的说一个现象:
同样一批机器(软硬件配置完全一样),同样的用户密码设置,COM+安全设置完全缺省,安装同一个操作系统(全部缺省安装,所有设置都一模一样),结果可能所有机器都可以作为远程服务器("Interface Not Supported"),也可能只有某些机器能作为远程服务器(可以远程调用);如果用GHOST备份那些成功的机器的操作系统,还原到那些不能作为远程服务器的机器上,则所有机器都可以作为远程服务器使用了;你说这是什么原因?
如果作为本地调用,是肯定没有问题的;远程调用则经常会出现“Interface Not Supported”的错误;在Delphi中Debug的结果是,在得到远程对象的指针后(指针非空),进行你所定义的接口类的强制转换时,出现了这个错误。如果是安全机制的问题,那么创建接口后得到的结果是否应该是空指针?
当时我解决这个问题的办法就是找到一台机器能作为远程调用的,ghost其操作系统,然后还原到其他不行的机器上;结果就大家都好了,昏倒;目前我尚未清楚这究竟是什么回事;
 
后退
顶部