DLL Differences

Posted on 2002-05-15
Medium Priority
Last Modified: 2010-05-18
I am somewhat confused by the difference between Microsoft.XMLDOM and MSXML3.DOMDocument.

I have installed MSXML3 nad this is what I am supposed to be using.  If I do CreateObject("MSXML3.DOMDocument") I get an invalid ProgID though.  My main question though is what the difference between these two DLLs is.


Question by:daveamour

Accepted Solution

RobinPatra earned 200 total points
ID: 7010931
These are the methods of different parsers .
The Microsoft XML parser comes with Microsoft Internet Explorer 5.0.

Check the following url plzz


This is a bit explanation for u

Installing MSXML

You have two options for installing MSXML 3: side-by-side for use with earlier versions, and replacement to blow old versions away and clean up references to them in the registry. It also includes a tool, XMLinst.exe, that lets you switch back and forth almost at will.

In a move that is surprisingly rare for the company who instigated DLL Hell, MSXML 3.0 is implement both in a DLL with a new name, MSXML3.dll versus the older MSXML.dll, and a new library name part of the ProgID: MSXML2 versus the older MSXML. No word yet whether the discrepancy between the 2 and 3 in the names will be cleaned up before release.


MSXML 3.0 is designed to coexist with your current version of MSXML. After installation, in the registry all the old MSXML-related entries still point to MSXML.dll, not the newer file, MSXML3.dll. New entries have been added for the new features. To use the new features in this side-by-side installation, you will have to explicitly disambiguate references to the objects that you want, lest your applications become confused:


var xmlDoc = new ActiveXObject("MSXML2.DOMDocument");


Retrievably Replaced

Since the new component is backward compatible, with new names in all the right places, it's a bit more difficult to install the new version as a replacement. All the detritus will remain in the registry unless you painstakingly remove it; regsvr32 can help.

But you may also want to fool around with the new version before committing it. A utility, XMLinst.exe, is installed with MSXML 3.0 in your SYSTEM32 directory. If you run the utility without any command line parameters, all your old MSXML registry entries are replaced by references to MSXML 2.6. If you want to remove all entries created by a particular DLL, use this command line:


xmlinst -u dllname

where dllname is either msxml or msxml3.


If you want to go back to the previous version, this line does the trick:


xmlinst msxml.dll


The dll named on that command line (which can take a fully-qualified path) will replace all entries created by MSXML with references to the named DLL.


LVL 19

Author Comment

ID: 7011144
Ok thanks very much.  One other question though if thats ok.  I have downloaded MSXML3 and ran the install program but whenever I try and use the DLL I get an error message suggesting that the DLL isn't registered.  Any ideas?



Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

The Client Need Led Us to RSS I recently had an investment company ask me how they might notify their constituents about their newsworthy publications.  Probably you would think "Facebook" or "Twitter" but this is an interesting client.  Their cons…
The Confluence of Individual Knowledge and the Collective Intelligence At this writing (summer 2013) the term API (http://dictionary.reference.com/browse/API?s=t) has made its way into the popular lexicon of the English language.  A few years ago, …
Watch the video to learn how one can deal with PST file corruption issue with an outstanding Kernel for Outlook PST Repair Tool easily. Using this tool, non-technical users can swiftly perform the repair process to restore their essential data witho…
In the video, one can understand the process of resizing images in single or bulk. Kernel Bulk Image Resizer is an easy to use tool for resizing large number of images. One can add and resize multiple images with this tool in single go. The video sh…
Suggested Courses

624 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question