msxml4: Added support for SAXXMLReader40.
diff --git a/dlls/msxml3/factory.c b/dlls/msxml3/factory.c
index 45ba368..af94d5c 100644
--- a/dlls/msxml3/factory.c
+++ b/dlls/msxml3/factory.c
@@ -167,7 +167,8 @@
         cf = (IClassFactory*) &domdoccf.lpVtbl;
     }
     else if( IsEqualCLSID( rclsid, &CLSID_SAXXMLReader) ||
-             IsEqualCLSID( rclsid, &CLSID_SAXXMLReader30 ))
+             IsEqualCLSID( rclsid, &CLSID_SAXXMLReader30 ) ||
+             IsEqualCLSID( rclsid, &CLSID_SAXXMLReader40 ))
     {
         cf = (IClassFactory*) &saxreadcf.lpVtbl;
     }
diff --git a/dlls/msxml4/regsvr.c b/dlls/msxml4/regsvr.c
index d5180c3..b3088f1 100644
--- a/dlls/msxml4/regsvr.c
+++ b/dlls/msxml4/regsvr.c
@@ -345,6 +345,14 @@
 	"Msxml2.DOMDocument",
 	"4.0"
     },
+    {   &CLSID_SAXXMLReader40,
+	"SAX XML Reader 4.0",
+	NULL,
+	"msxml4.dll",
+	"Both",
+	"Msxml2.SAXXMLReader",
+	"4.0"
+    },
     { NULL }			/* list terminator */
 };
 
@@ -357,6 +365,11 @@
 	&CLSID_DOMDocument40,
 	NULL
     },
+    {   "Msxml2.SAXXMLReader.4.0",
+	"SAX XML Reader 4.0",
+	&CLSID_SAXXMLReader40,
+	NULL
+    },
     { NULL }			/* list terminator */
 };
 
diff --git a/include/msxml2.idl b/include/msxml2.idl
index b6303c9..8991400 100644
--- a/include/msxml2.idl
+++ b/include/msxml2.idl
@@ -1980,6 +1980,15 @@
 };
 
 [
+    uuid(7c6e29bc-8b8b-4c3d-859e-af6cd158be0f)
+]
+coclass SAXXMLReader40
+{
+    [default] interface IVBSAXXMLReader;
+    interface ISAXXMLReader;
+};
+
+[
     uuid(fc220ad8-a72a-4ee8-926e-0b7ad152a020)
 ]
 coclass MXXMLWriter