本文介绍了错误 C1189:#error:此文件要求 _WIN32_WINNT 至少 #定义为 0x0500.建议使用 0x0501 或更高的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在 VS2010(windows xp) 中创建 MFC 项目.我接受了这个错误:
I create MFC project in VS2010(windows xp). And i take this error:
error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0500. Value 0x0501 or higher is recommended.
如果我在 afxcomctl32.h
中添加:#define _WIN32_WINNT 0x0501
,我会出现 60 多个错误.在项目中我没有添加任何东西.使用如 Visual Studio 创建的.我需要做什么?
if I added in afxcomctl32.h
: #define _WIN32_WINNT 0x0501
, i take 60+ errors.In project i dont added anything. Use such as Visual Studio created.What i need to do with this?
推荐答案
我认为 afxcomctl32.h 是一个错误的地方,要解决这个问题,让你的 stdafx.h 看起来像这样:
afxcomctl32.h is a wrong place I think, to fix this problem make your stdafx.h looking like this:
// Modify the following defines if you have to target a platform prior to the ones specified below.
// Refer to MSDN for the latest info on corresponding values for different platforms.
#ifndef WINVER // Allow use of features specific to Windows 95 and Windows NT 4 or later.
#define WINVER 0x0501 // Change this to the appropriate value to target Windows 98 and Windows 2000 or later.
#endif
#ifndef _WIN32_WINNT // Allow use of features specific to Windows NT 4 or later.
#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target Windows 98 and Windows 2000 or later.
#endif
#ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later.
#define _WIN32_WINDOWS 0x0501 // Change this to the appropriate value to target Windows Me or later.
#endif
#ifndef _WIN32_IE // Allow use of features specific to IE 4.0 or later.
#define _WIN32_IE 0x0500 // Change this to the appropriate value to target IE 5.0 or later.
#endif
这篇关于错误 C1189:#error:此文件要求 _WIN32_WINNT 至少 #定义为 0x0500.建议使用 0x0501 或更高的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!