Welcome to the new platform of Programmers Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use it's exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.
Get the MSXML 4.0 parser running -- help!
I'm currently writing a wrapper class for the MSXML 4.0 parser in C++, and I have a problem to get the app running on systems where the parser SDK is not installed.
I'm using the #import
directive to import the classes from the msxml4.dll library into my code, but that doesn't seem to be enough. When I start the app on another system where the SDK is NOT installed, I'm catching an exception: "Class not registered". I think it's a COM exception, since I use the following smart pointer interfaces:
When creating the instance of the document, I pass the class ID CLSID_DOMDocument40 as the argument.
Well, it works just fine, except that the SDK needs to be installed to start the app. That's not bearable to force the user to install a software dev kit in order to use my apps!
As a side note:
If I use the older interface, in fact IXMLDOMDocument, and pass the class ID CLSID_DOMDocument, then it seems to work without installing the SDK. I already tried to #import
msxml4a.dll and #import
msxml4r.dll as well, but this only generated a compiler error.
Can you help me here?