Lee Doron created XERCESC-2033:
----------------------------------
Summary: Define _WIN32_WINNT for min supported version of Windows
Key: XERCESC-2033
URL: https://issues.apache.org/jira/browse/XERCESC-2033
Project: Xerces-C++
Issue Type: Improvement
Components: Build
Affects Versions: 3.1.1
Environment: Windows
Reporter: Lee Doron
Priority: Minor
Fix For: 3.1.2
Microsoft makes changes to the Windows API with each OS release. These changes
are reflected in the Windows SDK header files, which contain conditional code
according to the minimum version of Windows you wish to support. This can be
selected by defining preprocessor symbols -- see
http://msdn.microsoft.com/en-us/library/aa383745.aspx. The macro _WIN32_WINNT
is sufficient, or for finer granularity (by service pack), you can also define
NTDDI_VERSION. When you don't define these, they get set in sdkddkver.h to the
latest version supported by the SDK; for VS 2012, that's Windows 8.0. If you
use any APIs that have changed in recent versions, then the DLL might not work
properly with older versions of Windows (e.g. XP).
I haven't actually seen any failures with Xerces, which is why I didn't mark
this as a bug, but I think you should add this symbol to the preprocessor
definitions to be on the safe side. I did it quickly in the Visual Studio
configuration, or it could be done in the source code before including
<windows.h>.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]