Minh Thang Dang wrote:

One other thing you might also want to check is make sure that the null
character is placed to mark the end of the string.

Keith

The problem is this works with other metadata (e.g. Dublin Core) but not 
MPEG-7. By the way, if I don't have any MPEG-7 schema files, there's no problem.

Did you take a look at the sample applications to see how they are
structured?  Off the top of my head, I would suggest you make sure you're
catching exceptions, and that you've enabled exception handling, but those
are just guesses.

You should run your application in a debugger, to see where the crash
occurs.  Unfortunately, you haven't provided nearly enough information for
anyone to determine if you have a bug in your code, or there's something
wrong in Xerces-C.

Dave
I tried to catch, something like:
try {
        mpParser->parse(*memBufIS);
} catch (const XMLException& toCatch)
    {
        return false;
    }
    catch (const DOMException& toCatch) {
        return false;
    }
    catch (exception& e) {
        return false;
    }

but no exception can be catched. In fact, the error message is as follows:
"Unhandled exception at 0x... in foo.exe: 0xC0000005: Access violation writing 
location 0x...."

OK, so your application is writing to memory it doesn't own. If you run it in the debugger, the debugger will break when the write occurs, and you can see a stack trace. From that point, you should be able to figure out the problem.

Dave

Reply via email to