VS2010创建ATL工程及使用C++测试COM组件

时间:2022-12-14 23:16:07

 

1.创建ATL项目,取名MyCom

VS2010创建ATL工程及使用C++测试COM组件

2. ATL 项目向导,勾选 【支持COM+ 1.0】和【支持部件注册器】,其他默认,点击完成。

VS2010创建ATL工程及使用C++测试COM组件

3.在该项目中添加类

VS2010创建ATL工程及使用C++测试COM组件

4.添加一个ATL简单对象

VS2010创建ATL工程及使用C++测试COM组件

5. ATL 简单对象向导,“简称”中输入类名称MyClass,其他输入框会自动填写,最下面的“ProgID”没有自动填写,最好自己写上一个,如MyCom.math,否则后面无法正确调用组件,点击“完成”。如果出现提示【是否覆盖现有文件】,点击【是】即可。

VS2010创建ATL工程及使用C++测试COM组件

ProgID:客户端用来取代CLSID 
创建此组件的编程ID

6. 切换到类视图,选中刚才添加的接口IMyClass,如下,然后右键单击【添加】添加方法。

VS2010创建ATL工程及使用C++测试COM组件

7.添加方法TotalSum,依次选择参数类型并输入参数名字

此处传入一个参数n(in),返回一个参数sum(out)

VS2010创建ATL工程及使用C++测试COM组件

8. 切换到解决方案资源管理器,展开项目“源文件”, 双击 MyCom.idl 打开IDL定义文件,看到如下代码,就是定义的COM方法了。

VS2010创建ATL工程及使用C++测试COM组件

9. 双击打开MyClass.cpp 编辑代码,计算0到n的总和

VS2010创建ATL工程及使用C++测试COM组件

#define STDMETHODIMP HRESULT

10.编译运行,会生成dll文件,并自动注册到系统中。

11.测试该COM组件,可以将MyCom_i.h和MyCom_i.c两个文件拷贝到自己的自己创建的工程目录下。

VS2010创建ATL工程及使用C++测试COM组件

12.测试组件运行结果:

VS2010创建ATL工程及使用C++测试COM组件