WEB开发网
开发学院软件开发VC COM 组件设计与应用(六)——用 ATL 写第一个组件(... 阅读

COM 组件设计与应用(六)——用 ATL 写第一个组件(vc.net)

 2006-07-22 22:56:14 来源:WEB开发网   
核心提示: 接口,双重(Dual),COM 组件设计与应用(六)——用 ATL 写第一个组件(vc.net)(3),这个非常 非常重要,非常非常常用,则还要修改一个地方,就是接口定义(IDL)文件,但我们今天不讲(注2),切记!切记!我们的这第一个 COM 程序中

接口。双重(Dual),这个非常 非常重要,非常非常常用,但我们今天不讲(注2)。切记!切记!我们的这第一个 COM 程序中,一定要选择“自定义”!!!!(如果你选错了,请删除全部内容,重新来过。)

聚合 我们写的组件,将来是否允许被别人聚合(注3)使用。“只能创建为聚合”,有点类似 C++ 中的纯虚类,你要是总工程师,只负责设计但不亲自写代码的话,才选择它。

ISupportErrorInfo 是否支持丰富信息的错误处理接口。以后就讲。

连接点 是否支持连接点接口(事件、回调)。以后就讲。

IObjectWithSite 是否支持IE的调用

四、添加接口函数

图六、调出增加接口方法的菜单

图七、增加接口函数 Add

请按照图示的方法,增加Add()函数,增加Cat()函数 。[in]表示参数方向是输入;[out]表示参数方向是输出;[out,retval]表示参数方向是输出,同时可以作为函数运算结果的返回值。一个函数中,可以有多个[in]、[out],但[retval]只能有一个,并且要和[out]组合后在最后一个位置。(注4)

图八、接口函数定义完成后的图示

我们都知道,要想改变 C++ 中的类函数,需要修改两个地方:一是头文件(.h)中类的函数声明,二是函数体(.cpp)文件的实现处。而我们现在用 ATL 写组件程序,则还要修改一个地方,就是接口定义(IDL)文件。别着急 IDL 下次就要讨论啦。

上一页  1 2 3 4  下一页

Tags:COM 组件 设计

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接