Alexandre Julliard : msxml: Register the v2. 0 classes using the IRegistrar mechanism.
Alexandre Julliard
julliard at winehq.org
Tue Dec 21 14:32:18 CST 2010
Module: wine
Branch: master
Commit: cfa37214b90cc16747a99c8d8d542d294df39094
URL: http://source.winehq.org/git/wine.git/?a=commit;h=cfa37214b90cc16747a99c8d8d542d294df39094
Author: Alexandre Julliard <julliard at winehq.org>
Date: Tue Dec 21 13:26:15 2010 +0100
msxml: Register the v2.0 classes using the IRegistrar mechanism.
---
dlls/msxml/msxml.rgs | 13 +++++++
dlls/msxml/rsrc.rc | 3 ++
dlls/msxml3/regsvr.c | 90 --------------------------------------------------
include/msxml.idl | 5 ++-
include/xmldom.idl | 18 ++++++++--
include/xmldso.idl | 6 +++-
tools/wine.inf.in | 1 +
7 files changed, 41 insertions(+), 95 deletions(-)
diff --git a/dlls/msxml/msxml.rgs b/dlls/msxml/msxml.rgs
new file mode 100644
index 0000000..6f235da
--- /dev/null
+++ b/dlls/msxml/msxml.rgs
@@ -0,0 +1,13 @@
+HKCR
+{
+ ForceRemove MSXML.DOMDocument = s 'XML DOM Document'
+ {
+ CLSID = s '{2933BF90-7B36-11D2-B20E-00C04F983E60}'
+ CurVer = s 'Microsoft.XMLDOM.1.0'
+ }
+ ForceRemove MSXML.FreeThreadedDOMDocument = s 'Free Threaded XML DOM Document'
+ {
+ CLSID = s '{2933BF91-7B36-11D2-B20E-00C04F983E60}'
+ CurVer = s 'Microsoft.FreeThreadedXMLDOM.1.0'
+ }
+}
diff --git a/dlls/msxml/rsrc.rc b/dlls/msxml/rsrc.rc
index 9537637..473a324 100644
--- a/dlls/msxml/rsrc.rc
+++ b/dlls/msxml/rsrc.rc
@@ -20,3 +20,6 @@
/* @makedep: msxml_tlb.tlb */
1 TYPELIB msxml_tlb.tlb
+
+/* @makedep: msxml.rgs */
+1 WINE_REGISTRY msxml.rgs
diff --git a/dlls/msxml3/regsvr.c b/dlls/msxml3/regsvr.c
index 7097b41..bbefedd 100644
--- a/dlls/msxml3/regsvr.c
+++ b/dlls/msxml3/regsvr.c
@@ -466,14 +466,6 @@ static LONG register_key_defvalueA(
* coclass list
*/
static struct regsvr_coclass const coclass_list[] = {
- { &CLSID_DOMDocument,
- "XML DOM Document",
- NULL,
- "msxml3.dll",
- "Both",
- "Microsoft.XMLDOM",
- "1.0"
- },
{ &CLSID_DOMDocument2,
"XML DOM Document",
NULL,
@@ -490,22 +482,6 @@ static struct regsvr_coclass const coclass_list[] = {
"Msxml2.DOMDocument",
"3.0"
},
- { &CLSID_DOMFreeThreadedDocument,
- "Free threaded XML DOM Document",
- NULL,
- "msxml3.dll",
- "Both",
- "Microsoft.FreeThreadedXMLDOM",
- "1.0"
- },
- { &CLSID_DOMFreeThreadedDocument,
- "Free threaded XML DOM Document",
- NULL,
- "msxml3.dll",
- "Both",
- "Microsoft.FreeThreadedXMLDOM",
- NULL
- },
{ &CLSID_FreeThreadedDOMDocument,
"Free Threaded XML DOM Document",
NULL,
@@ -530,14 +506,6 @@ static struct regsvr_coclass const coclass_list[] = {
"Microsoft.FreeThreadedDOMDocument.1.0",
"1.0"
},
- { &CLSID_XMLHTTPRequest,
- "XML HTTP Request",
- NULL,
- "msxml3.dll",
- "Apartment",
- "Microsoft.XMLHTTP",
- "1.0"
- },
{ &CLSID_XMLHTTP26,
"XML HTTP 2.6",
NULL,
@@ -554,14 +522,6 @@ static struct regsvr_coclass const coclass_list[] = {
"Msxml2.XMLHTTP.3.0",
"3.0"
},
- { &CLSID_XMLDSOControl,
- "XML Data Source Object",
- NULL,
- "msxml3.dll",
- "Apartment",
- "Microsoft.XMLDSO",
- "1.0"
- },
{ &CLSID_XMLDocument,
"Msxml",
NULL,
@@ -655,21 +615,6 @@ static struct regsvr_interface const interface_list[] = {
* progid list
*/
static struct progid const progid_list[] = {
- { "Microsoft.XMLDOM",
- "XML DOM Document",
- &CLSID_DOMDocument,
- "Microsoft.XMLDOM.1.0"
- },
- { "Microsoft.XMLDOM.1.0",
- "XML DOM Document",
- &CLSID_DOMDocument,
- NULL
- },
- { "MSXML.DOMDocument",
- "XML DOM Document",
- &CLSID_DOMDocument,
- "Microsoft.XMLDOM.1.0"
- },
{ "Msxml2.DOMDocument",
"XML DOM Document",
&CLSID_DOMDocument2,
@@ -680,21 +625,6 @@ static struct progid const progid_list[] = {
&CLSID_DOMDocument30,
NULL
},
- { "Microsoft.FreeThreadedXMLDOM",
- "Free threaded XML DOM Document",
- &CLSID_DOMFreeThreadedDocument,
- "Microsoft.FreeThreadedXMLDOM.1.0"
- },
- { "Microsoft.FreeThreadedXMLDOM.1.0",
- "Free threaded XML DOM Document",
- &CLSID_DOMFreeThreadedDocument,
- NULL
- },
- { "MSXML.FreeThreadedDOMDocument",
- "Free threaded XML DOM Document",
- &CLSID_DOMFreeThreadedDocument,
- "Microsoft.FreeThreadedXMLDOM.1.0"
- },
{ "MSXML.FreeThreadedDOMDocument26",
"Free threaded XML DOM Document 2.6",
&CLSID_FreeThreadedDOMDocument26,
@@ -705,16 +635,6 @@ static struct progid const progid_list[] = {
&CLSID_FreeThreadedDOMDocument30,
NULL
},
- { "Microsoft.XMLHTTP",
- "XML HTTP Request",
- &CLSID_XMLHTTPRequest,
- "Microsoft.XMLHTTP.1.0"
- },
- { "Microsoft.XMLHTTP.1.0",
- "XML HTTP Request",
- &CLSID_XMLHTTPRequest,
- NULL
- },
{ "Msxml2.XMLHTTP.2.6",
"XML HTTP 2.6",
&CLSID_XMLHTTP26,
@@ -725,16 +645,6 @@ static struct progid const progid_list[] = {
&CLSID_XMLHTTP30,
NULL
},
- { "Microsoft.XMLDSO",
- "XML Data Source Object",
- &CLSID_XMLDSOControl,
- "Microsoft.XMLDSO.1.0"
- },
- { "Microsoft.XMLDSO.1.0",
- "XML Data Source Object",
- &CLSID_XMLDSOControl,
- NULL
- },
{ "Msxml",
"Msxml",
&CLSID_XMLDocument,
diff --git a/include/msxml.idl b/include/msxml.idl
index 62dbcfa..c6dd745 100644
--- a/include/msxml.idl
+++ b/include/msxml.idl
@@ -343,7 +343,10 @@ interface IXMLElementNotificationSink : IDispatch
}
[
-uuid(cfc399af-d876-11d0-9c10-00c04fc99c8e)
+ helpstring("Msxml"),
+ progid("Msxml"),
+ threading(both),
+ uuid(cfc399af-d876-11d0-9c10-00c04fc99c8e)
]
coclass XMLDocument
{
diff --git a/include/xmldom.idl b/include/xmldom.idl
index d47c06e..3e3b613 100644
--- a/include/xmldom.idl
+++ b/include/xmldom.idl
@@ -736,7 +736,11 @@ dispinterface XMLDOMDocumentEvents
}
[
-uuid(2933bf90-7b36-11d2-b20e-00c04f983e60)
+ helpstring("XML DOM Document"),
+ progid("Microsoft.XMLDOM.1.0"),
+ vi_progid("Microsoft.XMLDOM"),
+ threading(both),
+ uuid(2933bf90-7b36-11d2-b20e-00c04f983e60)
]
coclass DOMDocument
{
@@ -745,7 +749,11 @@ coclass DOMDocument
}
[
-uuid(2933bf91-7b36-11d2-b20e-00c04f983e60)
+ helpstring("Free Threaded XML DOM Document"),
+ progid("Microsoft.FreeThreadedXMLDOM.1.0"),
+ vi_progid("Microsoft.FreeThreadedXMLDOM"),
+ threading(both),
+ uuid(2933bf91-7b36-11d2-b20e-00c04f983e60)
]
coclass DOMFreeThreadedDocument
{
@@ -809,7 +817,11 @@ interface IXMLHttpRequest : IDispatch
}
[
-uuid(ed8c108e-4349-11d2-91a4-00c04f7969e8)
+ helpstring("XML HTTP Request"),
+ progid("Microsoft.XMLHTTP.1.0"),
+ vi_progid("Microsoft.XMLHTTP"),
+ threading(apartment),
+ uuid(ed8c108e-4349-11d2-91a4-00c04f7969e8)
]
coclass XMLHTTPRequest
{
diff --git a/include/xmldso.idl b/include/xmldso.idl
index c203422..60af6c3 100644
--- a/include/xmldso.idl
+++ b/include/xmldso.idl
@@ -49,7 +49,11 @@ interface IXMLDSOControl : IDispatch
}
[
-uuid(550dda30-0541-11d2-9ca9-0060b0ec3d39)
+ helpstring("XML Data Source Object"),
+ progid("Microsoft.XMLDSO.1.0"),
+ vi_progid("Microsoft.XMLDSO"),
+ threading(apartment),
+ uuid(550dda30-0541-11d2-9ca9-0060b0ec3d39)
]
coclass XMLDSOControl
{
diff --git a/tools/wine.inf.in b/tools/wine.inf.in
index 0221640..e65162d 100644
--- a/tools/wine.inf.in
+++ b/tools/wine.inf.in
@@ -2527,6 +2527,7 @@ HKLM,%CurrentVersion%\Telephony\Country List\998,"SameAreaRule",,"G"
11,,msimtf.dll,1
11,,msisip.dll,1
11,,mstask.dll,1
+11,,msxml.dll,1
11,,msxml3.dll,1
11,,msxml4.dll,1
11,,msxml6.dll,1
More information about the wine-cvs
mailing list