摆脱 _WIN32_WINNT 未定义。

getting rid of _WIN32_WINNT not defined.

我正在尝试摆脱 _WIN32_WINNT 未定义:

_WIN32_WINNT 未定义。默认为 _WIN32_WINNT_MAXVER(参见 WinSDKVer.h)

我是 运行 Win 7 上的 VS 2010,我正在尝试重新编译一个最初在 Win CE 中编译的 MFC 项目。

我已经查看了 WinSDKVer.h 并且可以看到它发生了什么,但我无法首先弄清楚 WIN32_WINNT 在哪里 defined/set。

如果我查看预处理器定义的宏部分但我无法更改它,则 $(OS) 设置为 Windows_NT。不确定这是否与此有关?

有什么想法吗?

非常感谢

两个可能的修复:

在预编译的 header 文件的顶部(通常 stdafx.h)。将其设为第一个 header。

#include <SDKDDKVer.h>

这可能会为您解决问题。

或者,您可以在预处理器设置中将 _WIN32_WINNT 定义为合理的值。 Right-click 在解决方案资源管理器中的项目名称和 select "Properties..."

从“属性”对话框中,转到配置属性 -> C/C++ -> 预处理器

在预处理器定义列表中,为 _WIN32_WINNT=0x0600 添加条目: