ATL7 + WTL7 编程,谁做过?请教2个问题 :)

nbb01 2002-08-01 11:55:29
最近想做一个嵌入IE的ActiveX,开发环境为Visual Studio.Net,遇到编译问题总解决不了:

1.先期测试,用向导生成了一个简单的ATL项目框架,因为想用(也必须得用)WTL7中的一些类,因此在stdafx.h中include <atlapp.h>,然后,代码中用到WTL的那个类(如CEdit、CPen、CDC等),我就include相应的.h文件,可是这样做后,总是编译无法通过,奇怪的是,错误指出未定义的符号都是ATL中的定义,而非WTL的。
请问ATL7是否可以和WTL7混合编程呢?看WTL的资料,应该是可以的啊。错误指出的未定义符号,向导都include进相应的ATL的.h了呀,还应该再做什么呢?

2. WTL的资料太少了,有什么网站、讨论组,或书籍可以参考?

...全文
35 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bighead 2002-08-03
  • 打赏
  • 举报
回复
你不用CString 把atlmisc.h踢掉就没影响了吧.
cpufall 2002-08-02
  • 打赏
  • 举报
回复
我不知Visual Studio.Net如何,但在VC6中开发ATL方式的ActiveX时可以使用MFC(如CEdit、CPen、CDC等),只要在创建时,选中支持MFC即可。在www.codeguru.com上有些关于ATL的东东,很有帮助,但是是很早的论坛
bighead 2002-08-02
  • 打赏
  • 举报
回复
ATL6 wtl3.1肯定可以,新版的不知道.
nbb01 2002-08-02
  • 打赏
  • 举报
回复
longaway() 说的对,终于找到毛病了:
#include <atlapp.h>以及其它WTL的include,必须放在stdafx.h的最后,
即必须在其中的using namespace ATL; 之后。

现在剩下的问题是,编译时WTL的atlmisc.h中,CString类成员函数中,
有用到 _Module. 全程变量,而向导生成的是_AtlModule,将其替换,
仍然不行。不过,我记得好象有个宏,可以排除不用WTL中的CString,
估计问题不大了。如果正常,晚上结帐,谢谢。

longaway 2002-08-02
  • 打赏
  • 举报
回复
是不是,include 的次序关系。
毕竟 atl first ?
longaway 2002-08-02
  • 打赏
  • 举报
回复
wtl 不是基于 atl 的嘛?
还有问题?
是不是因为版本匹配的关系?
nbb01 2002-08-02
  • 打赏
  • 举报
回复
应该不难啊,真的没有人做过吗?up!
nbb01 2002-08-02
  • 打赏
  • 举报
回复
cpufall(cpufall) :
同志,就是为了甩掉MFC,才用ATL + WTL 啊,ATL + MFC 我也会啊:)

3,245

社区成员

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

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