所以我尝试将我的项目从Windows XP上的先前版本移动到Windows 7上的Visual C ++ Express 2010。我找到了各种各样的错误,其中没有找到atlbase.h。这不是一个问题,但我想记录我的解决方案对其他人的影响。
从我之前的安装中复制以下PlatformSDK文件并将它们放在我的Windows 7计算机上。
PlatformSDK /包含/ ATL
PlatformSDK /包括/ MFC
PlatformSDK / lib中
PlatformSDK / SRC / ATL
然后我将项目属性中的VC ++目录更改为指向这些目录。
包含目录 -
*包括/ ATL
*包括/ MFC
图书馆目录 -
* LIB
来源目录 -
*的src / ATL
对stdafx.h进行更改
在这一行之后:#include“atlbase.h”
添加以下行:extern CComModule _Module;
希望你现在准备好了!可能不是,但也许你很顺利。
答案 0 :(得分:9)
ATL和MFC未包含在Visual Studio的免费Express版本中。这是查找包含文件时出现问题的主要原因。 ATL仍然是WDK的一部分。如果您使用以前版本的VS或WDK安装了ATL,则需要分别对项目设置更新您的includ目录,以便选择ATL * .h文件。请参阅下面的帖子了解更多详情和讨论。
答案 1 :(得分:0)
这可能是因为你使用的以前版本是visual c ++ 6.0而且不支持它
答案 2 :(得分:0)
ATM,它似乎是非自由的。
答案 3 :(得分:0)
现在有一个ATL启发的Windows运行时WRL库,它显然支持构建Classic COM对象(参见http://msdn.microsoft.com/en-us/library/jj822931.aspx)。它包含在Express中,但我还没试过。
即使ATL 7.1在WDK 7.1中,设置起来也很烦人,请考虑投票将ATL带回VS Express;)https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3252947-add-atl-to-visual-studio-2010-express-for-desktop