Posted on 2009-09-17 09:08
S.l.e!ep.¢% 阅读(413)
评论(0) 编辑 收藏 引用 所属分类:
COM
怎样向新的ATL项目中添加之间已经做好的COM类
解决了,果然reg文件是必须的
新的ATL项目中添加已经做好的COM类
1.首先要说的是ATL项目中除了COM类,还包括若干个C++类,在一个新的ATL项目中添加已经存在的C++类很简单,只要选择“添加”->“现有项”,然后选择相应C++类的.h和.cpp文件即可。
2.下面将描述怎样在新的ATL项目中添加已经做好的COM类
(1)已经做好的COM类在磁盘上通常包括四个文件:
当然还要包括.idl文件中关于该COM类定义的部分,注意:一个COM类在idl文件中有两个地方进行了描述,如下所示:
(2)现将.h和.cpp文件添加到新项目中,然后将原来idl文件中对该COM类描述的两个部分拷贝到新项目idl文件中的相应位置。编译,这里可能会出现一些没有包含头文件或者包含头文件错误的编译错误,可以根据实际情况进行修改。还有不要忘记根据新项目的项目名称修改下面的语句(这个语句在.h文件中):
最后会出现一个类似下面的错误:
error C2065: “IDR_FEATURES”: 未声明的标识符
(3)解决上面的错误的方法:
用鼠标将原始COM类中的.rgs文件拖动到如下图所示的位置:
然后用鼠标双击刚刚拖入的文件:并根据新项目的项目名称修改下面的语句
(4)接着右键单击如图
打开该文件后,添加如下图所示的语句:
(5)重新编译新的ATL项目,发现没有编译错误,大功告成!