佚名通过本文主要向大家介绍了atl mfc,atl/mfc跟踪工具,atl支持,atl,atl71.dll等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 在ATL中支持MFC,CAtlExeModuleT未定义
描述:
#include "resource.h"
#include <afx.h>
#include <atlbase.h>
#include <atlcom.h>
#include <atlapp.h>
#include <atlwin.h>
#include <comutil.h>
#include <MMSystem.h>
#include <UrlMon.h>
#include <atlstr.h>
#include <mshtmdid.h>
#include <mshtml.h>
#include <exdispid.h>
#include <exdisp.h>
同时也在属性配置中对MFC的支持做了设置

但还是提示这两个错误
1>d:\javascript调用c++示例\js调用c++示例\cpp_js\cpp_js.cpp(9): error C2504: “CAtlExeModuleT”: 未定义基类
1>d:\javascript调用c++示例\js调用c++示例\cpp_js\cpp_js.cpp(9): error C2143: 语法错误 : 缺少“,”(在“<”的前面)
打开atlbase.h文件查到了这个
#ifndef _AFX
template <class T>
class ATL_NO_VTABLE CAtlExeModuleT :
public CAtlModuleT<T>
{
};
#endif // !_AFX
解决方案1:
描述:
本帖最后由 newlist 于 2012-08-16 09:22:04 编辑
已经在stdafx.h文件包含了这些文件#include "resource.h"
#include <afx.h>
#include <atlbase.h>
#include <atlcom.h>
#include <atlapp.h>
#include <atlwin.h>
#include <comutil.h>
#include <MMSystem.h>
#include <UrlMon.h>
#include <atlstr.h>
#include <mshtmdid.h>
#include <mshtml.h>
#include <exdispid.h>
#include <exdisp.h>
同时也在属性配置中对MFC的支持做了设置

但还是提示这两个错误
1>d:\javascript调用c++示例\js调用c++示例\cpp_js\cpp_js.cpp(9): error C2504: “CAtlExeModuleT”: 未定义基类
1>d:\javascript调用c++示例\js调用c++示例\cpp_js\cpp_js.cpp(9): error C2143: 语法错误 : 缺少“,”(在“<”的前面)
打开atlbase.h文件查到了这个
#ifndef _AFX
template <class T>
class ATL_NO_VTABLE CAtlExeModuleT :
public CAtlModuleT<T>
{
};
#endif // !_AFX
解决方案1:
文件文件包含顺序问题吧,你看看哪一个文件中有 CAtlExeModuleT 的,然后你要在调用这个类前就得先包含那个头文件