Boost logo

Boost Users :

Subject: Re: [Boost-users] Compile errors inside boost::asio code I can'taffect.
From: Zachary Turner (divisortheory_at_[hidden])
Date: 2009-06-26 19:35:51


On Fri, Jun 26, 2009 at 5:47 PM, <Michael.Broida_at_[hidden]> wrote:
> On the 64-bit builds (where the problem DOES occur) I am using _WIN32_WINNT=0x0600 directly in the .vcproj files.  That's on a WindowsServer2008 SP1, VS2008 setup.  Either "windows.h" or "WinNT.h" says 0x0600 is "Longhorn", and it appears that WindowsServer2008 qualifies, based on what I thought I saw when I intentionally omitted _WIN32_WINNT and let the compiler pick the value.  Maybe I'm wrong; I'll try to verify what happens if I don't specify anything for _WIN32_WINNT.

anything greater than or equal to 0x0500 is fine, but the asio header
file is actually checking WINVER, not _WIN32_WINNT. WINVER is really
just the 'legacy' version of _WIN32_WINNT but conceptually they are
used for the same purpose. so i'm not sure why the header checks
WINVER instead of _WIN32_WINNT, although there may be a good reason.

Anyway, long story short, leave the _WIN32_WINNT=0x0600 in, but
additionally add WINVER=0x0600 and try that.

The reason this doesn't occur on 32 bit is because ULONG_PTR is a
different type on 32 and 64-bits.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net