当前位置:
工控论坛
> >
产品
>
OPC
我要发帖
求助:OPCServer结构
点击:
1483
| 回复:
2
tomzhu
关注
私信
精华:0帖
求助:0帖
帖子:4帖 | 3回
年度积分:0
历史总积分:15
注册:2002年6月20日
发表于:2003-10-13 10:19:00
楼主
在认识OPCServer的过程中,我有一个小小的疑惑,望各位指教! 众所周知,OPC是基于COM/DCOM技术的,在COM规范中有两个很重要的概念既 包容与聚合,具体意义我不在此解释。而OPC规范中提到,要开发OPC服务器,要 用到两个重要的COM对象即OPCServer和OPCGroup,这两个COM对象都有自己的 一大堆接口。当客户方访问服务器方时,总是先创建OPCServer对象,再由 OPCServer创建OPCGroup对象,然后由OPCGroup对象操作Items。 所以有个问题是,在用VC++开发OPC数据服务器,我想知道OPCServer与OPCGroup 这两个对象是采用包容关系还是聚合关系好呢?望指教!!!
分享到:
收藏
邀请回答
回复楼主
举报
OPCStorm
关注
私信
精华:0帖
求助:0帖
帖子:0帖 | 1回
年度积分:0
历史总积分:1
注册:2002年12月09日
发表于:2002-12-09 00:50:00
1楼
因为OPCGroup不需要通过CLSID来创建,因此不需要对外公开(不需注册),它只要符合OPCGroup的接口就行了,因此,它可以是组件内部的类(从IUnknown,IOPC...等接口继承),因此,就谈不上组件技术中的包容和聚合的说法了。可以在OPCServer中设一个OPCGroup的数组或向量(vector)。 包容和聚合都是组件技术中实现组件复用的两种不同的技术,如: A和B是两个组件,A要复用B,也即A也要实现B的接口(注意:OPCServer不需要实现OPCGroup的接口),那么,用包容技术实际上是在A内部包含一个B的对象作为成员,然后A在其要实现B的接口时直接用B的相关接口函数作为其实现;而聚合则是直接将B的接口对外公开,就像B和A是合为一体了,二者生命期一致,这样就要求二者生命期的管理一致,增加了复杂性。
回复
引用
举报
parrot
关注
私信
精华:0帖
求助:0帖
帖子:1帖 | 12回
年度积分:0
历史总积分:15
注册:2002年12月30日
发表于:2003-10-13 10:19:00
2楼
说得对,可是OPCServer中设一个OPCGroup的数组,OPCGroup本身也是一个接口呀,如何进行生成实例呢
回复
引用
举报
热门招聘
相关主题
opc通讯
[2250]
OPC客户端开发几个境界
[12038]
OPC解决方案
[2075]
求factorysoft 的opc server...
[1553]
modbus tcp协议(modbus plus...
[8719]
PI数据库中的问题,求教
[1432]
请问那里有opc daauto.dll 和...
[1465]
什么叫规约?
[1918]
大家都用什么报表软件?
[1550]
用C语言写OPC客户程序
[2126]
官方公众号
智造工程师
客服
小程序
公众号