error C1189:#error:This file requires _WIN32_WINNT to be #defined at least to 0x0403

出现 

error C1189:#error:This file requires _WIN32_WINNT to be #defined at least to 0x0403

是由于原工程与现在你的系统不兼容导致的,一般是原工程的版本较低,现在的版本较高,不能兼容。纠正方法是:

首先 找到stdafx.h头文件(一般头文件定义都在这里,首选就是找这里),前3段是关于系统的(干涉,此处就是系统不兼容,所以全部注释掉),最后1段是讲IE的(不干涉,默认处理) 注释掉前3 个低版本的
//#ifndef WINVER // Allow use of features specific to Windows 95 and Windows NT 4 or later.
//#define WINVER 0x0400 // 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 0x0400 // 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 0x0410 // Change this to the appropriate value to target Windows Me or later.
//#endif
2 添加新的本本
#define WINVER 0x0500
#define _WIN32_WINNT 0x0500
#ifndef WINVER     // 允许使用特定于 Windows XP 或更高版本的功能。
#define WINVER 0x0501   // 将此值更改为相应的值,以适用于 Windows 的其他版本。
#endif

3 下面这个是IE的不用管
#ifndef _WIN32_IE // Allow use of features specific to IE 4.0 or later.
#define _WIN32_IE 0x0400 // Change this to the appropriate value to target IE 5.0 or later.
#endif

这样就不会出错了

你可能感兴趣的:(C++,opencv)