13

因此,我尝试将我的项目从 Windows XP 上的先前版本移至 Windows 7 上的 Visual C++ Express 2010。我在找不到 atlbase.h 的地方遇到了各种错误。这不是一个太大的问题,但我想记录下我的决议对其他人来说是什么。

从我以前的安装中复制以下 PlatformSDK 文件并将它们放在我的 Windows 7 机器上。

平台SDK/include/atl

平台SDK/include/mfc

平台SDK/lib

平台SDK/src/atl

然后,我将项目属性中的 VC++ 目录更改为指向这些目录。

包括目录-

*包括/atl

*包括/mfc

图书馆目录-

*库

源目录-

*src/atl

对 stdafx.h 进行更改

在这一行之后:#include "atlbase.h"

添加这一行: extern CComModule _Module;

希望你现在准备好了!可能不会,但也许你一切顺利。

4

4 回答 4

10

ATL 和 MFC 未包含在 Visual Studio 的免费 Express 版本中。这是定位包含文件出现问题的主要原因。ATL 仍然是 WDK 的一部分。如果您的 ATL 安装了以前版本的 VS 或 WDK,则需要分别进入项目设置更新您的包含目录,以便获取 ATL *.h 文件。有关更多详细信息和讨论,请参阅下面的帖子。

于 2011-10-25T05:53:21.143 回答
0

现在有一个受 ATL 启发的 Windows 运行时 WRL 库,它显然支持构建经典 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

于 2014-09-16T02:11:58.340 回答
0

这可能是因为您使用的以前的版本是 Visual c++ 6.0 并且不支持它

于 2010-04-21T14:35:16.147 回答
0

ATM,它似乎是非免费的。

SDK v7.0 示例——没有 atlbase.h

于 2011-09-25T00:11:11.590 回答