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

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

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

2014年09月05日 ⁄ 综合 ⁄ 共 563字 ⁄ 字号    ⁄ 评论关闭
<iframe id="cproIframe_u1788635_2" width="336" height="280" src="http://pos.baidu.com/acom?adn=3&amp;at=231&amp;aurl=&amp;cad=1&amp;ccd=32&amp;cec=UTF-8&amp;cfv=17&amp;ch=0&amp;col=zh-CN&amp;conBW=0&amp;conOP=1&amp;cpa=1&amp;dai=2&amp;dis=0&amp;ltr=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DqC5As5KXWDeMLXD5A0S1_Ntv6Y3haZDKJOvTx-dyynxF5bReZdXrmr3aQAwT4Trj%26wd%3D%26eqid%3D961a3b0e0002dbe60000000556283ce7&amp;ltu=http%3A%2F%2Fwww.xuebuyuan.com%2F2142379.html&amp;lu_161=0&amp;lunum=6&amp;n=83099053_cpr&amp;pcs=1440x739&amp;pis=10000x10000&amp;ps=486x946&amp;psr=1440x900&amp;pss=1440x506&amp;qn=eb224a7c314872c2&amp;rad=&amp;rsi0=336&amp;rsi1=280&amp;rsi5=4&amp;rss0=%23FFFFFF&amp;rss1=%23FFFFFF&amp;rss2=%230000ff&amp;rss3=%23444444&amp;rss4=%23008000&amp;rss5=&amp;rss6=%23e10900&amp;rss7=&amp;scale=&amp;skin=tabcloud_skin_3&amp;stid=5&amp;td_id=1788635&amp;titFF=%E5%AE%8B%E4%BD%93&amp;titFS=12&amp;titTA=left&amp;tn=text_default_336_280&amp;tpr=1445477585867&amp;ts=1&amp;version=2.0&amp;xuanting=0&amp;dtm=BAIDU_DUP2_SETJSONADSLOT&amp;dc=2&amp;di=u1788635&amp;ti=VS2010%E5%88%9B%E5%BB%BAATL%E5%B7%A5%E7%A8%8B%E5%8F%8A%E4%BD%BF%E7%94%A8C%2B%2B%E6%B5%8B%E8%AF%95COM%E7%BB%84%E4%BB%B6%20%7C%20%E5%AD%A6%E6%AD%A5%E5%9B%AD&amp;tt=1445477585851.1950.2995.2995" align="center,center" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="margin: 0px; padding: 0px; border-width: 0px; background-color: transparent;"></iframe>

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组件