Jay Lash - 2009-02-25

Im working on moving a project to CE using Dev Studio 2005 and quickly ran into an issue with the security-enhanced runtimes.

TIXML uses the security-enhanced runtime from 2005 when possible.  It is nicely #ifdef'd to only use the enhanced version if the compiler version is >= 1400. 

The CE compiler is now common (to some extent) with the desktop compiler and thus has the same major/minor version so it tries to use the enhanced functions in TIXML.  Unfortunately the PocketPC 2003 platform libraries (as shipped with Dev Studio 2005) dont support the enhanced functions.

So...the solution that seems to work is an additional condition of  !defined(_WIN_CE).  I added it to the compiler version check inside the TIXML_SAFE stuff and in TiXmlFOpen().

Has anyone else run into this?  Is there a better solution?