描述:
对COM不是很了解,最近要做个简单的DCOM的例子
我以为DCOM是这样的,我写个COM组件,在每台机器中,注册到“组件服务”-“计算机”-“我的电脑”-“COM+应用程序”中,然后就可以在机器B中远程调用机器A上的这个组件,自己实验没成功
我在网上找资料,在codeproject和MSND上下载例子源码,发现这些例子中除了COM组件DLL,还有个服务程序exe,要把服务程序和DLL在每台机器上注册后,才能在机器A中调用机器B中的COM组件,自己实验也没有成功-_-!
现在对DCOM的结构很迷惑,
1 DCOM是要一个服务程序来调用,而没有服务程序,只有COM组件DLL是不能远程调用的?是这样的吗?
2 如果是需要一个服务程序,那是不是每台机器都要注册服务程序和DLL,注册后,机器B调用机器A的com组件,通过服务程序调用的,即可以理解为机器B实际上是调用机器A上的服务程序,服务程序再去掉用com组件?
解决方案1:
就调用COM就行了,不用写“服务程序”,微软都帮你搞好了。DCOM,需要配置一下ip,权限什么的,好像DCOM的升级版是COM+,可以参考一下
解决方案2: 1) DCOM在服务端可以是SERVICE的形式,也可以不是, 如ATL的service是以DCOM的方式实现的;
2) 调用不成功的原因大部分是没有处理好权限问题,
=======================================================
FreeLaxy, your backup.
=======================================================