怎样向新的ATL项目中添加之间已经做好的COM类

cau228charm 2009-09-15 08:54:15
加精
我之前建立了一个ATL项目,其中有若干C++类和COM类,现在我新建了一个ATL项目,想把之前那个ATL项目中的部分C++类和COM导入到新建的ATL项目中,目前C++类的导入比较简单,只要导入现有项,然后选择相应的.h和.cpp文件就可以了。现在关键是不知道如何快速的导入COM类?大伙有什么好的方法吗? 谢谢!!
...全文
645 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangguangjunqq 2010-03-31
  • 打赏
  • 举报
回复
发现很多人 在回复乱码啊,有十分可以拿吗 我怎么不知道啊 我也要
xwsn007 2010-01-09
  • 打赏
  • 举报
回复
MARK
jycz 2009-12-05
  • 打赏
  • 举报
回复
每天回帖即可获得10分可用分!小技巧:教您如何更快获得可用分
hallowwar 2009-09-18
  • 打赏
  • 举报
回复
CSDN人才辈出啊,以后多来。
caifh125 2009-09-18
  • 打赏
  • 举报
回复
顶楼主 !!!!!
做鸡真好吃 2009-09-17
  • 打赏
  • 举报
回复
没吐
darwinye 2009-09-17
  • 打赏
  • 举报
回复
up
laowang2 2009-09-16
  • 打赏
  • 举报
回复
(3)解决上面的错误的方法:
用鼠标将原始COM类中的.rgs文件拖动到如下图所示的位置:

然后用鼠标双击刚刚拖入的文件:并根据新项目的项目名称修改下面的语句

(4)接着右键单击如图

打开该文件后,添加如下图所示的语句:

重要的没显示出来.
chn_nj_ls 2009-09-16
  • 打赏
  • 举报
回复
学习ing~~~
fjiog 2009-09-16
  • 打赏
  • 举报
回复
学些了,谢谢
cau228charm 2009-09-15
  • 打赏
  • 举报
回复
解决了,果然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项目,发现没有编译错误,大功告成!
cau228charm 2009-09-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wshcdr 的回复:]
把该COM的 .h,.cpp,.idl文件都加入该工程
[/Quote]
我照你那样做了,比如我导入的是COM类是CFeature,会发生下面的编译错误:
error C2065: “IDR_FEATURE”: 未声明的标识符
看了一下原来的目录,除了COM的 .h,.cpp,.idl文件,还有一个.rgs文件,这个可能与资源有关,但我不知道怎么弄
wshcdr 2009-09-15
  • 打赏
  • 举报
回复
把该COM的 .h,.cpp,.idl文件都加入该工程
hankanling123 2009-09-15
  • 打赏
  • 举报
回复
每天回帖即可获得10分可用分!小技巧:教您如何更快获得可用分
yuanquanzhen 2009-09-15
  • 打赏
  • 举报
回复
顶顶
浪漫江湖 2009-09-15
  • 打赏
  • 举报
回复
不错,学习学习
shishiv33 2009-09-15
  • 打赏
  • 举报
回复
hehe~~~很好~
majianmin1 2009-09-15
  • 打赏
  • 举报
回复
UPPPP
aidy22 2009-09-15
  • 打赏
  • 举报
回复
UP
dingruihon 2009-09-15
  • 打赏
  • 举报
回复
地方地方地方地方到的地方的
加载更多回复(7)

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧