【发布时间】:2018-11-01 19:00:08
【问题描述】:
当我尝试在 Windows 2012 服务器上编译我的 Visual Studio C++ 2017、x86 应用程序时,我收到以下错误
错误 C1189 #error: MFC 不支持小于 0x0501 的 WINVER。 请在您的项目属性中更改 WINVER 的定义或 预编译的头文件。 MyProject e:\program files (x86)\microsoft visual studio\2017\enterprise\vc\tools\msvc\14.13.26128\atlmfc\include\afxv_w32.h 40
我在 stadafx.h 文件中添加了以下代码。但这并没有解决问题。
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x601
#endif
如何确保我的代码可以在所有等于或高于 windows 2012 的 windows 操作系统中运行。
Project => Properties=> C/C++ => Precompiled Headers 值为空。
如果我选择“任何 CPU”构建选项,则相同的代码可以工作。 请告诉我正确的配置, 谢谢
【问题讨论】:
-
当你想 100% 确定你定义它时,不要不使用#ifndef,你现在在重新定义它时会收到编译警告。并临时添加 #error "it works" 来验证这个 .h 文件是否真的被包含在内。
标签: visual-c++ visual-studio-2017 windows2012