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.
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?
You don't need to modify afxcomctl32.h. You just need to include Windows.h before this file.
Should work.
afxcomctl32.h is a wrong place I think, to fix this problem make your stdafx.h looking like this:
Try adding this to the TOP of your StdAfx.h file:
In my application, I'm defining
At first I had the same problem. I discovered that because when you use MFC, you're not allowed to include windows.h, _WIN32_WINNT_WINXP is never defined and so _WIN32_WINNT didn't have a valid value. By including the header that windows.h uses to define those values (sdkddkver.h), suddenly everything works!
Blech. I hate programming for Windows.
I solved my problem. The fact was that the file
atmcore.h
was different from the standart in VS2010.