The following release notes contain documentation updates for Microsoftâ XML Core Services (MSXML) 3.0 Service Pack 5 (SP5).
Note These release notes update but do not replace the documentation found in the MSXML SDK.
MSXML 3 SP5 has a number of bug fixes including those detailed in the following Knowledge Base (KB) articles:
· Article 811045: XSL requests within IE do not use the client-side cache correctly (http://support.microsoft.com/?id=811045).
· Article 832414: XMLHTTP call fails for URLs with embedded user credentials (http://support.microsoft.com/?id=832414).
MSXML 3.0 SP5 Redistribution
For earlier releases, it was possible to redistribute MSXML 3.0 by having your Windows Installer package consume a single merge module (.msm) file. This is no longer possible.
For MSXML 3.0 SP5, your installer package must now consume the following three merge module (.msm) files:
Module |
Description |
msxml3_wim32.msm |
Provides the files msxml3.dll, msxml3r.dll, and msxml3a.dll. Also provides Windows File Protection (WFP) custom actions for installing on Windows 2000, Windows XP, and Windows 2003. |
msxml3inf_wim32.msm |
Provides the files msxml3.inf and msxml3.cat for installing on Windows 2000, Windows XP, and Windows 2003 (required by the WFP custom actions). |
wdstddll_wim32.msm |
Provides support DLLs for the custom actions in msxml3_wim32.msm (required by the WFP custom actions). |
Additionally, when you install MSXML 3.0 SP5 for Windows 2000, Windows XP, or Windows Server 2003, you might notice in your deployment testing that your setup requires a reboot.
Occasionally, setup may need to reboot the computer but fails to inform the user. In such situations, the user may see that the msxml3.dll file in the Windows system directory (%SYSTEMDIR%) has not been updated. Once the computer is rebooted by the user, the msxml3.dll file will be updated.
In order to detect that a reboot is required on these versions of Windows, and notify the user of this need, add the following property to your Windows Installer project:
WDSFPCA_USEDETECTREBOOT.41646F16_4E6C_4E96_BF1B_772105414B9D
Set this property to a value of 1.
MSXML 3.0 SP5 Limitations
The MSXML 3.0 SP5 distribution does not directly support the following:
· Rollback to prior versions of MSXML 3.0.
· Uninstall or reinstallation for different languages.
MSXML 3.0 SP5 Known Issues
MSXML 3.0 SP5 introduces changes for IXMLDOMSchemaCollection, which in some cases could break your existing application code if it uses and depends upon SP stability for msxml3.dll in the following ways:
· IDispatch, specifically where your IXMLDOMSchemaCollection code depends upon DispIDs returned from IDispatch::GetIDsOfNames method
· IDispatchEx, specifically where your IXMLDOMSchemaCollection code depends upon IDispatchex::GetDispID method to retrieve DispIDs
Specifically, breaking changes occur if your code involves calls to IDispatch::Invoke or IDispatchEx::InvokeEx using DispIDs which were not derived from a call to IDispatch::GetIDsOfNames or IDispatchEx::GetDispID on that same object. The only methods to be impacted are the properties and methods on the IXMLDOMSchemaCollection object.
This is a temporary issue that is expected to be addressed in future service pack updates for MSXML 3.0.
Troubleshooting Notes
Reinstalling MSXML 3 after Upgrading Windows
If you are upgrading to Windows XP or Windows Server 2003 from a previous version of Windows you may need to reinstall MSXML 3.0 SP5. Please download and run the .msi file available from this page.
If you are unsure of what version of MSXML is installed you can check the version of MSXML using the XMLVersion tool documented in the following Knowledge Base article:
Article 278674: Determine the Version of MSXML Parser Installed on a Computer (http://support.microsoft.com/?id=278674).
Instructions for downloading, extracting, registering and running the XMLVersion tool are outlined in this KB article.
When using the XMLVersion tool, the version information is displayed in a Web page and may display information on multiple versions of MSXML installed on your machine. Look for the line that contains MSXML 3.0 version information. If the version number is 8.50.2162.0 or higher then it is not necessary to install this package.
Note The MSXML 3.0 line may say "Unknown Version". The tool is functioning properly and the correct version number is reported. The tool was published prior to the release of SP5 and does not have the appropriate mappings between the version number and the release name so it provides the default.
Registering MSXML 3 after Uninstalling 3rd Party Applications
There are many applications that ship MSXML 3.0. Accidentally uninstalling any one of those applications on a Windows system could potentially unregister the MSXML 3.0 assembly files (msxml3.dll and msxml3r.dll). This is possible when MSXML 3.0 appears to no longer be installed or available, but its assembly files still remain in the Windows system folder.
If you experience problems attempting to use MSXML 3.0 SP5 after removing an application that might have been using it, you can fix this issue by repeating the registration of msxml3.dll on your system.
To register MSXML 3.0
1. From the Start menu, click Run.
2. Enter the following command:
regsvr32 %windir%\system32\msxml3.dll
3. Click OK.
If the registration is successful, you should see a message box that reads similar to the following:
DllRegisterServer in C:\WINDOWS\system32\msxml3.dll succeeded.