Subject: [xsl] Testing with MSXML 3.0 or MSXML 6.0 (WAS: XSL 2.0 and .NET and VB) From: "Manfred Staudinger" <manfred.staudinger@xxxxxxxxx> Date: Mon, 2 Jul 2007 14:47:26 +0200 |
By default, with Vista and higher, any IE will use MSXML 6.0. Win2k, WinXP and Win2k3 by default use MSXML 3.0, unless MS Office 2003 is installed, in which case IE6 defaults to MSXML 5.0. But, surprisingly, IE7 will default to MSXML 3.0
Thanks for the concise clarification. Well, some month ago I have read through the "Using the right version of MSXML in Internet Explorer" blog entry you mentioned, but got very frustrated.
Part of that disappointment was: "Just remember to test your app with MSXML6 and with MSXML3 so you aren't surprised when you release your application". But how would I do that if I use PI ? Can I tell the IE which version to use for default ? May I install 2 IE 6 with different MSXML's ? I would love the possibility of a "stand-alone" installation to support that (as in http://www.positioniseverything.net/articles/multiIE.html).
The other consideration was, should I upgrade to MSXML6 ? Sure I should, but when ? Would this mean to lose the ability to test with MSXML3 ? You see, many question marks, few if any answers (from MS).
Not exactly.Read on at this good and detailed story about the versions and how best to instantiate them and you will be enthralled ;)
M. David Peterson wrote: > On Sun, 01 Jul 2007 04:26:08 -0600, Manfred Staudinger > <manfred.staudinger@xxxxxxxxx> wrote: > >> No. Both IE 6 and IE 7 use MSXML3. > > They do? UGGGLLYYY!!! I guess it's because I have physically > installed MSXML 6 that I had it there by default... > > Hmmm... That bites! >
This is not entirely correct. It depends on what operating system you have, or it depends on the user settings. By default, with Vista and higher, any IE will use MSXML 6.0. Win2k, WinXP and Win2k3 by default use MSXML 3.0, unless MS Office 2003 is installed, in which case IE6 defaults to MSXML 5.0. But, surprisingly, IE7 will default to MSXML 3.0 (MS considers 3.0 a more stable and secure release, and 6.0 is its successor, not 4.0 or 5.0), unless MSXML 6.0 is available.
MS wants to put MXSML in some future service pack for 2k, XP and 2k3, which may change matters (and probably will make matters even worse).
If a user downloads MSXML 6.0 by hand, it will become the preferred version for either IE6 or IE7.
When you try to instantiate an MSXML object without specifying its version number, it will NOT instantiate the latest version, instead, it will ALWAYS instantiate an MSXML 3.0 object:
new ActiveXObject('Msxml2.DOMDocument.3.0')
and
new ActiveXObject('Msxml2.DOMDocument)
are both equal on any system. So, defaults or not, you must always specify the 6.0 version explicitly to use it.
Does this all sound awfully confusing? Read on at this good and detailed story about the versions and how best to instantiate them http://blogs.msdn.com/xmlteam/archive/2006/10/23/using-the-right-version-of-msxml-in-internet-explorer.aspx and you will be enthralled ;)
Cheers, -- Abel Braaksma
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] how to include & url, Garry Searle | Thread | Re: [xsl] Testing with MSXML 3.0 or, M. David Peterson |
Re: [xsl] Replacing default namespa, Martin Honnen | Date | [xsl] WordML Support, Pankaj Bishnoi |
Month |