HELP!!! - Installation of MSXML Parser 4.0 SP1

I have an ASP page that uses the Microsoft XML Parser.
I had msxml4.dll (Ver 4, not SP1 and not the pre-April 2001 release) installed, the actual version was 4.08.  In my ASP page I use the following to instantiate the XML DOM object:

Set objXMLDoc = Server.Createobject("MSXML2.DOMDocument")

Now, I just updated my server to the MSXML 4.0 SP1 parser (version 4.10) and the page now throws the error pointing to the object creation line:

Server object error 'ASP 0177 : 80040111'
Server.CreateObject Failed
ClassFactory cannot supply requested class

Why won't my CreateObject method work with this new version?  I have tried changing the line to:
Set objXMLDoc = Server.Createobject("MSXML.DOMDocument")
Set objXMLDoc = Server.Createobject("MSXML2.DOMDocument.4.0")
but neither of those work either.  This upgrade caused my entire site to go down and I can't find out how to "roll-back" to the non-SP1 version. I am in a bind here, so any help is appreciated.
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

b1xml2Connect With a Mentor Commented:
ClassFactory cannot supply requested class

generally indicates that the browser is of the wrong version. If i might hazard a guess, the difference between the dev box and the server is the MSIE version yes? If that is the case, upgrade to MSIE 6 on the Server. I have had developers telling me that MSXML4 requires MSIE 6 or else it will break but I have not had the luxury of checking out their claims.

Also, have you installed Windows Installer 2.0 be4 you installed MSXML4 on the Advanced Server?
bmcclearyAuthor Commented:
BTW - I am using the same reference to instantiate the parser from a VB component that I am using as well and the VB component doesn't have any problems... it's only with my ASP page.  I referenced MS XML 4.0 and used "Dim objXMLDoc As MSXML2.DOMDocument" to instantiate the parser.

1. what Operating System are you using?
2. what MSIE version is on the server?

1. I have installed MSXML4 SP1 on top of MSXML4 for Windows 2000 Professional, Windows 2000 Server and Windows 2000 Advanced server. There was no problems encountered. Remember to close all objects which use MSXML4. This includes any COM or COM+/MTS Objects (in short, reboot box if you are using COM+/MTS as shutting down the services do not guarantee that the pointers are properly released)

2. Remember that there was the July and April releases of MSXML4 be4 it went gold. Uninstall all MSXML4 of these beta versions be4 you proceed.

3. You would have installed Windows Installer 2.0  be4 you could install MSXML4 RTM+.

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

bmcclearyAuthor Commented:
Thanks for the response!  Here's the low-down on my configuration.  I did the development on one of our testing machines running W2K Professional.  It had MSXML 4.08 installed (I believe that this was the non-SP1 version, but it was downloaded and installed within the past 6 months, so it should not be the older releases).  It worked perfectly for development, then when I rolled it out onto the production server which is W2K Advanced Server which had MSXML 4.0 SP1 installed, then I got the error.  To test out what was causing the error, I installed the SP1 on my machine and it caused the same error.  According to Microsoft ( they recommend unregistering the DLL's before install, but only for the pre-releases.  I did not do this, but after the error, I did uninstall MSXML 4.0, reboot, delete the dll's, reboot again, and reinstall, and it did not fix the problem.  It sounds like the component interface changed between releases.  Does this help?  Am I using the correct call to instantiate the object?

if you have MSXML3 installed on your box, as an interim measure, use the progid "Msxml2.DOMDocument.3.0". To call MSXML4, you are using the right progid "Msxml2.DOMDocument.4.0"
bmcclearyAuthor Commented:
I did have MSIE 6.0 already installed, so I don't know what fixed the problem, but it is fixed now.  I had to completly uninstall MSXML and reinstall IE6 and MSXML and the problem seemed to fix itself.  Also, I did have to use the "MSXML2.DOMDocument.4.0" reference instead of the "MSXML2.DOMDocument". Thanks for info!
All Courses

From novice to tech pro — start learning today.