Hi,

I'm writing a cross-platform Mac/Windows app, and advised my client to use the 
XML format for some data files she needs.

But I'm afraid I'm not particularly experienced with XML, and before getting 
Xerces 
a few weeks ago, had no experience with using it in a program.

I'm using the Metrowerks CodeWarrior Pro 5 development environment.  I've 
always been impressed with CodeWarrior on the Mac, and feel much more 
comfortable with it on Windows than competing products.

But Xerces doesn't come ready for use with CodeWarrior for Windows.  I got a 
project made, and made the right config files and stuff to do that, and added 
some 
checks for the environment (in this case, __MWERKS__ is defined on a Windows 
platforms; commonly people use that to detect that they're on a Mac but that's 
not what you want to do really) and got it to build.

I had no end of problems with the Win32 transcoding service.  What it looks 
like 
to me is that the ANSI wide char routines that are documented for windows 
simply don't work the same in metrowerks as they do in VisualC++.  The result 
was that the lengths that the widechar routines would calculate buffers would 
need would always be zero.

I worked around these problems in various ways, in part by just counting the 
characters and in part by calling the Windows routines like WideCharToMultiByte 
and so on.

I'm able to make several of the sample programs work OK, that came with Xerces 
(DOMCount, DOMPrint, etc.).  But when I use it in my program, I have no end of 
trouble.  I get all kinds of weird crashes.  I am initializing the library in 
my 
application's constructor.  I'm trying to use a source debugger to diagnose my 
problems but it's useless - no matter what I do I don't get a stack crawl or a 
crash 
in a source file.

One thing I'm also doing differently is that I built Xerces as a static 
library.  I felt 
more comfortable doing this for now because I'm not an expert windows 
programmer.  I may change it to a DLL later.

I'm downloading an update to CodeWarrior right now, maybe it'll fix the wide 
char 
problems.  Also I'm going to try the Xerces 1.1.0 that apparently was just 
released.

If I can get a sane CodeWarrior build I expect I can return my changes to you 
folks.  I'll have to check with my client.

Mike Crawford
GoingWare - Expert Software Development and Consulting
http://www.goingware.com
[EMAIL PROTECTED]

Reply via email to