Article ID: 278636 - Last Review: September 17, 2011 - Revision: 7.0 Application errors occur after you run Xmlinst.exe on production servers
This article was previously published under Q278636 On This PageProblem description
After you run Xmlinst.exe, applications (such as Microsoft SQL Server 2000) may no longer run correctly.
To have us fix this problem for you, go to the “Fix it for me” section. If you would rather fix this problem yourself, go to the “Let me fix it myself” section. Fix it for meTo fix this problem automatically, click the
Fix this problem
link. Then, click
Run
in the
File Download
dialog box, and follow the steps in this wizard.
Notes
Let me fix it myselfWhen you run Xmlinst.exe, the program alters the ProgID values in the registry for all the earlier versions of the Microsoft XML parser (MSXML), and it forces them to use the latest version of the MSXML .dll file.
To resolve this problem and to reverse the effects of the previous Xmlinst.exe program, you must first run the xmlinst.exe -u command to remove the existing registry keys. Then, you must use Regsrv32.exe to register the specific versions of the .dll files that you want. We recommend that you register all current versions of the MSXML parser. To install a specific version of the MSXML parser, see the "MSXML versions" table in the "More information" section. This table details the MSMXL versions. For example, to register the MSXML 2.6 parser, use the following command:
regsvr32.exe msxml2.dll Did this fix the problem?Check whether the problem is fixed. If the problem is fixed, you are finished with this article. If the problem is not fixed, you can contact support
(http://support.microsoft.com/contactus)
. Status
This behavior is by design. Xmlinst.exe is intended as a convenient method for developers to run the latest version of the MSXML parser in all their programs. By doing this, developers can avoid the need to recompile and update existing programs when they use and test the latest version of the MSXML parser, regardless of the parser version that the program was originally specified to use. More information
The MSXML parser is intended for installation in side-by-side mode. This lets you install specific versions of the MSXML parser that you want installed without one installation of the MSXML parser affecting another installation. Therefore, all separate versions of the MSXML parser can coexist. Additionally, the new and previous .dll files for the parser can reside side-by-side on your computer. Alternatively, you can install the parser by using replace mode. In replace mode, all references to any version references of the MSXML parser are updated so that only the latest version of the MSXML parser is used. Therefore, when you run Xmlinst.exe, Xmlinst.exe may cause programs that were written for and tested with specific versions to fail. Note If you run Xmlinst.exe, Xmlinst.exe may cause system instability, and it may cause programs to fail. After you run Xmlinst.exe, the computer is in an unsupported state. Also, the changes that are made by Xmlinst.exe are global to the computer on which Xmlinst.exe was run, and these changes affect all the programs that use the MSXML parser. Although MSXML is installed in replace mode, no .dll files are replaced or deleted. Only the registry is updated. Xmlinst.exe updates all the registry entries for each specific version of the MSXML parser so that it points to the newest version of the MSXML parser. Because Xmlinst.exe updates only the registry, all the earlier versions of the .dll files must be resident on the computer in order to reverse the effects of a previous execution of Xmlinst.exe. The Xmlinst.exe commands and descriptions are listed in the following table: Collapse this table
To switch to a different version of the MSXML parserTo switch to a different version of the MSXML parser, follow these steps:
MSXML versionsCollapse this table
XML versions that are included with productsCollapse this table
Collapse this table
Collapse this table
GUID and ProgID information The MSXML 3.0 Beta release is installed on the computer in side-by-side mode. This mode protects the applications that currently use the Msxml.dll and Msxml2.dll files. Side-by-side mode also lets you decide which version of the parser to use in your code. If you currently run MSXML in side-by-side mode, and you have coded to old ClassIDs and ProgIDs, your applications do not detect the new features of the MSXML 3.0 Beta release. To enable applications to use the features of the MSXML 3.0 Beta release, run the parser in replace mode. Note When you run the parser in replace mode, this may alter the behavior of any XML applications that use old ProgIDs. The following table is a convenient reference that lists the different Symbolic Name, GUID, and ProgID combinations: Collapse this table
| Other Resources Other Support Sites
CommunityGet Help NowArticle Translations
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email
Back to the top
