我将中间层做成一个Com组件,在服务器端连接使用很正常,可为什么在远程用DCOM进行连接,总提示“类没有注册”的错误。我查了很多资料,也完全按资料说的进行配置(例如权限设置,客户端注册等等)始终不行。不过在远程用Soket进行连接则没有问题。
后来我将中间层改为exe类型,按原来的配置用DCOM则很轻松的就连上了,真是感到很困惑,希望各位高手给予指教。
后来我将中间层改为exe类型,按原来的配置用DCOM则很轻松的就连上了,真是感到很困惑,希望各位高手给予指教。
解决方案 »
- 请问如何读取PSafeArray变量?
- 紧急求助!!DevExpress的TcxDBLookupComboBox使用方法及问题
- TTreeNode对象的data使用问题。
- Borland发布delphi2006,和vs.net2005对决!!
- 请问在存储过程中的事务如何写?
- 有关DBGrid的简单问题
- delphi如何传递参数给.net写的web serviece? 高手请进!
- 本人想往网络机器的某一个端口发送一个TCP包,如何实现?
- 哪位遇到过speedbutton放在toolbar上,凹凸的问题?
- 想做一个Web Service,有没有谁能能帮帮我
- 打印问题,如何控制 band 的替换,急!!!
- 请教这个提示的意思??
万分感谢。
期待高手.........
只用过socekt觉得还是可以的 帮你up
不管是COM还是其它什么,如果它是DLL,它是不能独立运行成一个进程的,
只有EXE形式的,才能独立运行成一个进程。DLL形式的COM,在单机上调用它,是进程内调用,
EXE形式的COM,在单机上调用它,是进程间调用。
你说将把DLL形式的COM,安装进组件服务,请问如何安装。
Dll形式的中间层和Exe形式的中间层有什么区别,具体说就是哪个更好一些。Dll可以共享进程是不是比Exe更好一些。
用socket进行连接,性能比用DCOM高还是低。
client ========scktsvr自定义协议===========> scktsvr.exe
|
|-进程内调用-->DLL 型COM
\--进程间调用-->EXE 型COM
这是使用DCOM 连接方式
client ============RPC====================>EXE 型COM
DCOM配置麻烦,第一次调用时间很长,安全性较好.
上面COM+我仅仅是画了一个示意图,其实可以有其它情况的.
COM+是支持不只RPC这一种协议的,它还可以通过消息队列调用,为大型系统设计的..
呵..不过很多大型系统,COM+ 仍达不到要求.
把一个DLL型的COM,添加进组件服务,也就是成为COM+,很容易的.
打开管理工具,组件服务试试就会用了.当然为了发挥COM+的能力,尽管普通COM组件可以加入组件服务,但适当编写的COM+组件,
可以提供比DCOM多得多的服务能力.
DLL方式COM则是依赖它的HOST APPLICATION的多线程机制.DLL灵活些.至于COM在多线程下的安全性则由COM的套间机制保证.可以不在乎是EXE还是DLL.
TSOCKETCONNECTION使用比较方便,但听很多人说TSOCKETCONNECTION不是很稳定,连接一多就容易死掉。
SCKTSVR.EXE调用DLL型的COM时候,是直接的进程内调用,这样这个DLL内部运行时的问题就有可能造成整个SCKTSVR.EXE死掉.
用DCOM连接,除了配置比较麻烦,其他还有什么限制吗,稳定性上是不是要好一些啊。
我给你发的短消息收到了没有。再一次请求留个QQ号。