mshtml: Convert the classes registration to the IRegistrar mechanism.
diff --git a/dlls/mshtml/Makefile.in b/dlls/mshtml/Makefile.in
index d52aac8..d805c74 100644
--- a/dlls/mshtml/Makefile.in
+++ b/dlls/mshtml/Makefile.in
@@ -103,4 +103,8 @@
IDL_H_SRCS = nsiface.idl
+IDL_R_SRCS = \
+ mshtml_classes.idl \
+ mshtml_tlb.idl
+
@MAKE_DLL_RULES@
diff --git a/dlls/mshtml/main.c b/dlls/mshtml/main.c
index 5f7a943..18cdaec 100644
--- a/dlls/mshtml/main.c
+++ b/dlls/mshtml/main.c
@@ -33,6 +33,7 @@
#include "advpub.h"
#include "shlwapi.h"
#include "optary.h"
+#include "rpcproxy.h"
#include "shlguid.h"
#include "wine/unicode.h"
@@ -368,7 +369,6 @@
DEFINE_GUID(CLSID_IImgCtx, 0x3050F3D6, 0x98B5, 0x11CF, 0xBB,0x82, 0x00,0xAA,0x00,0xBD,0xCE,0x0B);
DEFINE_GUID(CLSID_IntDitherer, 0x05F6FE1A, 0xECEF, 0x11D0, 0xAA,0xE7, 0x00,0xC0,0x4F,0xC9,0xB3,0x04);
DEFINE_GUID(CLSID_MHTMLDocument, 0x3050F3D9, 0x98B5, 0x11CF, 0xBB,0x82, 0x00,0xAA,0x00,0xBD,0xCE,0x0B);
-DEFINE_GUID(CLSID_Scriptlet, 0xAE24FDAE, 0x03C6, 0x11D1, 0x8B,0x76, 0x00,0x80,0xC7,0x44,0xF3,0x89);
DEFINE_GUID(CLSID_TridentAPI, 0x429AF92C, 0xA51F, 0x11D2, 0x86,0x1E, 0x00,0xC0,0x4F,0xA3,0x5C,0x89);
#define INF_SET_ID(id) \
@@ -484,7 +484,9 @@
{
HRESULT hres;
- hres = register_server(TRUE);
+ hres = __wine_register_resources( hInst, NULL );
+ if(SUCCEEDED(hres))
+ hres = register_server(TRUE);
if(SUCCEEDED(hres))
load_gecko(FALSE);
@@ -496,7 +498,9 @@
*/
HRESULT WINAPI DllUnregisterServer(void)
{
- return register_server(FALSE);
+ HRESULT hres = __wine_unregister_resources( hInst, NULL );
+ if(SUCCEEDED(hres)) hres = register_server(FALSE);
+ return hres;
}
const char *debugstr_variant(const VARIANT *v)
diff --git a/dlls/mshtml/mshtml.inf b/dlls/mshtml/mshtml.inf
index d7d2428..b06743a 100644
--- a/dlls/mshtml/mshtml.inf
+++ b/dlls/mshtml/mshtml.inf
@@ -12,246 +12,43 @@
[Classes.Reg]
-;; AboutProtocol
-HKCR,"CLSID\%CLSID_AboutProtocol%",,,"Microsoft HTML About Pluggable Protocol"
-HKCR,"CLSID\%CLSID_AboutProtocol%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_AboutProtocol%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CAnchorBrowsePropertyPage
-HKCR,"CLSID\%CLSID_CAnchorBrowsePropertyPage%",,,"%Microsoft Anchor Element Browse Property Page%"
-HKCR,"CLSID\%CLSID_CAnchorBrowsePropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CAnchorBrowsePropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CBackgroundPropertyPage
-HKCR,"CLSID\%CLSID_CBackgroundPropertyPage%",,,"Microsoft HTML Background Page"
-HKCR,"CLSID\%CLSID_CBackgroundPropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CBackgroundPropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CCDAnchorPropertyPage
-HKCR,"CLSID\%CLSID_CCDAnchorPropertyPage%",,,"Microsoft HTML Anchor Page"
-HKCR,"CLSID\%CLSID_CCDAnchorPropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CCDAnchorPropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CCDGenericPropertyPage
-HKCR,"CLSID\%CLSID_CCDGenericPropertyPage%",,,"Microsoft HTML Generic Page"
-HKCR,"CLSID\%CLSID_CCDGenericPropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CCDGenericPropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CDocBrowsePropertyPage
-HKCR,"CLSID\%CLSID_CDocBrowsePropertyPage%",,,"%Microsoft Document Browse Property Page%"
-HKCR,"CLSID\%CLSID_CDocBrowsePropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CDocBrowsePropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CDwnBindInfo
-HKCR,"CLSID\%CLSID_CDwnBindInfo%",,,"Microsoft HTML DwnBindInfo"
-HKCR,"CLSID\%CLSID_CDwnBindInfo%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CDwnBindInfo%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; ExternalFrameworkSite
-HKCR,"CLSID\%CLSID_ExternalFrameworkSite%",,,"Microsoft HTML External Document"
-HKCR,"CLSID\%CLSID_ExternalFrameworkSite%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_ExternalFrameworkSite%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CHiFiUses
-HKCR,"CLSID\%CLSID_CHiFiUses%",,,"Microsoft Scriptlet HiFiTimer Uses"
-HKCR,"CLSID\%CLSID_CHiFiUses%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_CHiFiUses%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_CHiFiUses%\ProgID",,,"Scriptlet.HiFiTimer"
-HKCR,"Scriptlet.HiFiTimer",,,"HiFiTimer Uses"
-HKCR,"Scriptlet.HiFiTimer\CLSID",,,"%CLSID_CHiFiUses%"
-
-;; CHtmlComponentConstructor
-HKCR,"CLSID\%CLSID_CHtmlComponentConstructor%",,,"Microsoft Html Component"
-HKCR,"CLSID\%CLSID_CHtmlComponentConstructor%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_CHtmlComponentConstructor%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CImageBrowsePropertyPage
-HKCR,"CLSID\%CLSID_CImageBrowsePropertyPage%",,,"Microsoft Image Element Browse Property Page"
-HKCR,"CLSID\%CLSID_CImageBrowsePropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CImageBrowsePropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CInlineStylePropertyPage
-HKCR,"CLSID\%CLSID_CInlineStylePropertyPage%",,,"Microsoft HTML Inline Style Page"
-HKCR,"CLSID\%CLSID_CInlineStylePropertyPage%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CInlineStylePropertyPage%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; CPeerHandler
-HKCR,"CLSID\%CLSID_CPeerHandler%",,,"Microsoft Scriptlet Element Behavior Handler"
-HKCR,"CLSID\%CLSID_CPeerHandler%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_CPeerHandler%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_CPeerHandler%\ProgID",,,"Scriptlet.Behavior"
-HKCR,Scriptlet.Behavior,,,"Element Behavior Handler"
-HKCR,Scriptlet.Behavior\CLSID,,,"%CLSID_CPeerHandler%"
-
-;; CRecalcEngine
-HKCR,"CLSID\%CLSID_CRecalcEngine%",,,"Microsoft HTML Recalc"
-HKCR,"CLSID\%CLSID_CRecalcEngine%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CRecalcEngine%\InProcServer32","ThreadingModel",,"Apartment"
-
;; CrSource
-HKCR,"CLSID\%CLSID_CrSource%",,,"Microsoft CrSource 4.0"
HKCR,"CLSID\%CLSID_CrSource%\BrowseInPlace",,16
HKCR,"CLSID\%CLSID_CrSource%\DefaultIcon",,0x00020000,"%16422%\Internet Explorer\iexplore.exe,1"
HKCR,"CLSID\%CLSID_CrSource%\EnablePlugin\.css",,,"PointPlus plugin"
-HKCR,"CLSID\%CLSID_CrSource%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_CrSource%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%CLSID_CrSource%\MiscStatus",,,"2228625"
-HKCR,"CLSID\%CLSID_CrSource%\ProgID",,,"CrSource"
-HKCR,"CLSID\%CLSID_CrSource%\Version",,,"4.0"
-
-;; CSvrOMUses
-HKCR,"CLSID\%CLSID_CSvrOMUses%",,,"Microsoft Scriptlet svr om Uses"
-HKCR,"CLSID\%CLSID_CSvrOMUses%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_CSvrOMUses%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_CSvrOMUses%\ProgID",,,"Scriptlet.SvrOm"
-HKCR,"Scriptlet.SvrOm",,,"Server OM Uses"
-HKCR,"Scriptlet.SvrOm\CLSID",,,"%CLSID_CSvrOMUses%"
-HKCR,"ScriptBridge.ScriptBridge",,,"Microsoft Scriptlet Component"
-HKCR,"ScriptBridge.ScriptBridge\CurVer",,,"ScriptBridge.ScriptBridge.1"
-HKCR,"ScriptBridge.ScriptBridge.1",,,"Microsoft Scriptlet Component"
-HKCR,"ScriptBridge.ScriptBridge.1\CLSID",,,"%CLSID_Scriptlet%"
;; HTADocument
-HKCR,"CLSID\%CLSID_HTADocument%",,,"Microsoft HTA Document 6.0"
HKCR,"CLSID\%CLSID_HTADocument%\BrowseInPlace",,16
-HKCR,"CLSID\%CLSID_HTADocument%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_HTADocument%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%CLSID_HTADocument%\MiscStatus",,,"2228625"
-HKCR,"CLSID\%CLSID_HTADocument%\Version",,,"6.0"
;; HTMLDocument
-HKCR,"CLSID\%CLSID_HTMLDocument%",,,"HTML Document"
HKCR,"CLSID\%CLSID_HTMLDocument%\BrowseInPlace",,16
HKCR,"CLSID\%CLSID_HTMLDocument%\DefaultIcon",,0x00020000,"%16422%\Internet Explorer\iexplore.exe,1"
-HKCR,"CLSID\%CLSID_HTMLDocument%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_HTMLDocument%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%CLSID_HTMLDocument%\MiscStatus",,,"2228625"
-HKCR,"CLSID\%CLSID_HTMLDocument%\ProgID",,,"htmlfile"
-HKCR,"CLSID\%CLSID_HTMLDocument%\Version",,,"6.0"
HKCR,"CLSID\%CLSID_HTMLDocument%\EnablePlugin\.css",,,"PointPlus plugin"
;; HTMLPluginDocument
-HKCR,"CLSID\%CLSID_HTMLPluginDocument%",,,"Microsoft HTML Document 6.0"
HKCR,"CLSID\%CLSID_HTMLPluginDocument%\BrowseInPlace",,16
-HKCR,"CLSID\%CLSID_HTMLPluginDocument%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_HTMLPluginDocument%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%CLSID_HTMLPluginDocument%\MiscStatus",,,"0"
-HKCR,"CLSID\%CLSID_HTMLPluginDocument%\ProgID",,,"htmlfile_FullWindowEmbed"
-
-;; HTMLPopup
-HKCR,"CLSID\%CLSID_HTMLPopup%",,,"Microsoft Html Popup Window"
-HKCR,"CLSID\%CLSID_HTMLPopup%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_HTMLPopup%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; HTMLPopupDoc
-HKCR,"CLSID\%CLSID_HTMLPopupDoc%",,,"Microsoft Html Document for Popup Window"
-HKCR,"CLSID\%CLSID_HTMLPopupDoc%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_HTMLPopupDoc%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; HTMLServerDoc
-HKCR,"CLSID\%CLSID_HTMLServerDoc%",,,"Microsoft HTML Server Document 6.0"
-HKCR,"CLSID\%CLSID_HTMLServerDoc%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_HTMLServerDoc%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; HTMLWindowProxy
-HKCR,"CLSID\%CLSID_HTMLWindowProxy%",,,"Microsoft HTML Window Security Proxy"
-HKCR,"CLSID\%CLSID_HTMLWindowProxy%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_HTMLWindowProxy%\InProcServer32","ThreadingModel",,"Apartment"
;; IImageDecodeFilter
-HKCR,"CLSID\%CLSID_IImageDecodeFilter%",,,"CoICOFilter Class"
-HKCR,"CLSID\%CLSID_IImageDecodeFilter%\InProcServer32",,,%_MOD_PATH%
-HKCR,"CLSID\%CLSID_IImageDecodeFilter%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"MIME\Database\Content Type\image/x-wmf","Image Filter CLSID",,"%CLSID_IImageDecodeFilter%"
HKCR,"MIME\Database\Content Type\image/x-wmf\Bits","0",1,04,00,00,00,FF,FF,FF,FF,D7,CD,C6,9A
-HKCR,"GIFFilter.CoGIFFilter\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"GIFFilter.CoGIFFilter.1",,,"CoGIFFilter Class"
-HKCR,"GIFFilter.CoGIFFilter.1\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"JPEGFilter.CoJPEGFilter",,,"CoJPEGFilter Class"
-HKCR,"JPEGFilter.CoJPEGFilter\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"JPEGFilter.CoJPEGFilter.1",,,"CoJPEGFilter Class"
-HKCR,"JPEGFilter.CoJPEGFilter.1\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"BMPFilter.CoBMPFilter",,,"CoBMPFilter Class"
-HKCR,"BMPFilter.CoBMPFilter\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"BMPFilter.CoBMPFilter.1",,,"CoBMPFilter Class"
-HKCR,"BMPFilter.CoBMPFilter.1\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"WMFFilter.CoWMFFilter",,,"CoWMFFilter Class"
-HKCR,"WMFFilter.CoWMFFilter\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"WMFFilter.CoWMFFilter.1",,,"CoWMFFilter Class"
-HKCR,"WMFFilter.CoWMFFilter.1\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"ICOFilter.CoICOFilter",,,"CoICOFilter Class"
-HKCR,"ICOFilter.CoICOFilter\CLSID",,,"%CLSID_IImageDecodeFilter%"
-HKCR,"ICOFilter.CoICOFilter.1",,,"CoICOFilter Class"
-HKCR,"ICOFilter.CoICOFilter.1\CLSID",,,"%CLSID_IImageDecodeFilter%"
-
-;; IImgCtx
-HKCR,"CLSID\%CLSID_IImgCtx%",,,"IImgCtx"
-HKCR,"CLSID\%CLSID_IImgCtx%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_IImgCtx%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_IImgCtx%\ProgID",,,"IImgCtx"
-HKCR,"IImgCtx",,,"IImgCtx"
-HKCR,"IImgCtx\CLSID",,,"%CLSID_IImgCtx%h"
-
-;; HTMLLoadOptions
-HKCR,"CLSID\%CLSID_HTMLLoadOptions%",,,"Microsoft HTML Load Options"
-HKCR,"CLSID\%CLSID_HTMLLoadOptions%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_HTMLLoadOptions%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; IntDitherer
-HKCR,"CLSID\%CLSID_IntDitherer%",,,"IntDitherer Class"
-HKCR,"CLSID\%CLSID_IntDitherer%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_IntDitherer%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; JSProtocol
-HKCR,"CLSID\%CLSID_JSProtocol%",,,"Microsoft HTML Javascript Pluggable Protocol"
-HKCR,"CLSID\%CLSID_JSProtocol%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_JSProtocol%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; MailtoProtocol
-HKCR,"CLSID\%CLSID_MailtoProtocol%",,,"Microsoft HTML Mailto Pluggable Protocol"
-HKCR,"CLSID\%CLSID_MailtoProtocol%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_MailtoProtocol%\InProcServer32","ThreadingModel",,"Apartment"
;; MHTMLDocument
-HKCR,"CLSID\%CLSID_MHTMLDocument%",,,"MHTML Document"
HKCR,"CLSID\%CLSID_MHTMLDocument%\BrowseInPlace",,16
HKCR,"CLSID\%CLSID_MHTMLDocument%\DefaultIcon",,0x00020000,"%16422%\Internet Explorer\iexplore.exe,1"
-HKCR,"CLSID\%CLSID_MHTMLDocument%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_MHTMLDocument%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%CLSID_MHTMLDocument%\MiscStatus",,,"2228625"
-HKCR,"CLSID\%CLSID_MHTMLDocument%\ProgID",,,"mhtmlfile"
-HKCR,"CLSID\%CLSID_MHTMLDocument%\Version",,,"6.0"
-
-;; ResProtocol
-HKCR,"CLSID\%CLSID_ResProtocol%",,,"Microsoft HTML Resource Pluggable Protocol"
-HKCR,"CLSID\%CLSID_ResProtocol%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_ResProtocol%\InProcServer32","ThreadingModel",,"Apartment"
;; Scriptlet
-HKCR,"CLSID\%CLSID_Scriptlet%",,,"Microsoft Scriptlet Component"
HKCR,"CLSID\%CLSID_Scriptlet%\Control",,16
-HKCR,"CLSID\%CLSID_Scriptlet%\InProcServer32",,,"%_MOD_PATH%"
-HKCR,"CLSID\%CLSID_Scriptlet%\InProcServer32","ThreadingModel",,"Apartment"
HKCR,"CLSID\%CLSID_Scriptlet%\MiscStatus",,,"0"
HKCR,"CLSID\%CLSID_Scriptlet%\MiscStatus\1",,,"131473"
-HKCR,"CLSID\%CLSID_Scriptlet%\ProgID",,,"ScriptBridge.ScriptBridge.1"
HKCR,"CLSID\%CLSID_Scriptlet%\Programmable",,16
HKCR,"CLSID\%CLSID_Scriptlet%\ToolboxBitmap32",,,"%16422%\Internet Explorer\iexplore.exe,1"
-HKCR,"CLSID\%CLSID_Scriptlet%\TypeLib",,,"%LIBID_MSHTML%"
-HKCR,"CLSID\%CLSID_Scriptlet%\Version",,,"4.0"
-HKCR,"CLSID\%CLSID_Scriptlet%\VersionIndependentProgID",,,"ScriptBridge.ScriptBridge"
HKCR,"MIME\Database\Content Type\text/x-scriptlet","CLSID",,"%CLSID_Scriptlet%"
-;; SysimageProtocol
-HKCR,"CLSID\%CLSID_SysimageProtocol%",,,"Microsoft HTML Resource Pluggable Protocol"
-HKCR,"CLSID\%CLSID_SysimageProtocol%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_SysimageProtocol%\InProcServer32","ThreadingModel",,"Apartment"
-
-;; TridentAPI
-HKCR,"CLSID\%CLSID_TridentAPI%",,,"%Trident API%"
-HKCR,"CLSID\%CLSID_TridentAPI%\InProcServer32",,,"mshtml.dll"
-HKCR,"CLSID\%CLSID_TridentAPI%\InProcServer32","ThreadingModel",,"Apartment"
-
[Protocols.Reg]
HKCR,"PROTOCOLS\Handler\javascript","CLSID",,"%CLSID_JSProtocol%"
diff --git a/dlls/mshtml/mshtml_classes.idl b/dlls/mshtml/mshtml_classes.idl
new file mode 100644
index 0000000..a5aef84
--- /dev/null
+++ b/dlls/mshtml/mshtml_classes.idl
@@ -0,0 +1,299 @@
+/*
+ * COM Classes for mshtml
+ *
+ * Copyright 2010 Alexandre Julliard
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+[
+ helpstring("Microsoft HTML About Pluggable Protocol"),
+ threading(apartment),
+ uuid(3050f406-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass AboutProtocol { }
+
+[
+ helpstring("Microsoft Anchor Element Browse Property Page"),
+ threading(apartment),
+ uuid(3050f3bb-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CAnchorBrowsePropertyPage { }
+
+[
+ helpstring("Microsoft HTML Background Page"),
+ threading(apartment),
+ uuid(3050f232-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CBackgroundPropertyPage { }
+
+[
+ helpstring("Microsoft HTML Anchor Page"),
+ threading(apartment),
+ uuid(3050f1fc-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CCDAnchorPropertyPage { }
+
+[
+ helpstring("Microsoft HTML Generic Page"),
+ threading(apartment),
+ uuid(3050f17f-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CCDGenericPropertyPage { }
+
+[
+ helpstring("Microsoft Document Browse Property Page"),
+ threading(apartment),
+ uuid(3050f3b4-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CDocBrowsePropertyPage { }
+
+[
+ helpstring("Microsoft HTML DwnBindInfo"),
+ threading(apartment),
+ uuid(3050f3c2-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CDwnBindInfo { }
+
+[
+ helpstring("Microsoft HTML External Document"),
+ threading(apartment),
+ uuid(3050f163-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass ExternalFrameworkSite { }
+
+[
+ helpstring("Microsoft Scriptlet HiFiTimer Uses"),
+ progid("Scriptlet.HiFiTimer"),
+ threading(apartment),
+ uuid(5aaf51b3-b1f0-11d1-b6ab-00a0c90833e9)
+]
+coclass CHiFiUses { }
+
+[
+ helpstring("Microsoft Html Component"),
+ threading(apartment),
+ uuid(3050f4f8-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CHtmlComponentConstructor { }
+
+[
+ helpstring("Microsoft Image Element Browse Property Page"),
+ threading(apartment),
+ uuid(3050f3b3-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CImageBrowsePropertyPage { }
+
+[
+ helpstring("Microsoft HTML Inline Style Page"),
+ threading(apartment),
+ uuid(3050f296-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CInlineStylePropertyPage { }
+
+[
+ helpstring("Microsoft Scriptlet Element Behavior Handler"),
+ progid("Scriptlet.Behavior"),
+ threading(apartment),
+ uuid(5aaf51b2-b1f0-11d1-b6ab-00a0c90833e9)
+]
+coclass CPeerHandler { }
+
+[
+ helpstring("Microsoft HTML Recalc"),
+ threading(apartment),
+ uuid(3050f499-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CRecalcEngine { }
+
+[
+ helpstring("Microsoft CrSource 4.0"),
+ threading(apartment),
+ progid("CrSource"),
+ version(4.0),
+ uuid(65014010-9f62-11d1-a651-00600811d5ce)
+]
+coclass CrSource { }
+
+[
+ helpstring("Microsoft Scriptlet svr om Uses"),
+ progid("Scriptlet.SvrOm"),
+ threading(apartment),
+ uuid(3050f4f0-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass CSvrOMUses { }
+
+[
+ helpstring("Microsoft HTA Document 6.0"),
+ threading(apartment),
+ version(6.0),
+ uuid(3050f5c8-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass HTADocument { }
+
+[
+ helpstring("HTML Document"),
+ progid("htmlfile"),
+ threading(apartment),
+ version(6.0),
+ uuid(25336920-03f9-11cf-8fd0-00aa00686f13)
+]
+coclass HTMLDocument { }
+
+[
+ helpstring("Microsoft HTML Document 6.0"),
+ progid("htmlfile_FullWindowEmbed"),
+ threading(apartment),
+ uuid(25336921-03f9-11cf-8fd0-00aa00686f13)
+]
+coclass HTMLPluginDocument { }
+
+[
+ helpstring("Microsoft Html Popup Window"),
+ threading(apartment),
+ uuid(3050f667-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass HTMLPopup { }
+
+[
+ helpstring("Microsoft Html Document for Popup Window"),
+ threading(apartment),
+ uuid(3050f67d-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass HTMLPopupDoc { }
+
+[
+ helpstring("Microsoft HTML Server Document 6.0"),
+ threading(apartment),
+ uuid(3050f4e7-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass HTMLServerDoc { }
+
+[
+ helpstring("Microsoft HTML Window Security Proxy"),
+ threading(apartment),
+ uuid(3050f391-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass HTMLWindowProxy { }
+
+[
+ helpstring("CoBMPFilter Class"),
+ progid("BMPFilter.CoBMPFilter.1"),
+ vi_progid("BMPFilter.CoBMPFilter"),
+ threading(apartment),
+ uuid(607fd4e8-0a03-11d1-ab1d-00c04fc9b304)
+]
+coclass CoBMPFilter { }
+
+[
+ helpstring("CoGIFFilter Class"),
+ progid("GIFFilter.CoGIFFilter.1"),
+ vi_progid("GIFFilter.CoGIFFilter"),
+ threading(apartment),
+ uuid(607fd4e8-0a03-11d1-ab1d-00c04fc9b304)
+]
+coclass CoGIFFilter { }
+
+[
+ helpstring("CoJPEGFilter Class"),
+ progid("JPEGFilter.CoJPEGFilter.1"),
+ vi_progid("JPEGFilter.CoJPEGFilter"),
+ threading(apartment),
+ uuid(607fd4e8-0a03-11d1-ab1d-00c04fc9b304)
+]
+coclass CoJPEGFilter { }
+
+[
+ helpstring("CoWMFFilter Class"),
+ progid("WMFFilter.CoWMFFilter.1"),
+ vi_progid("WMFFilter.CoWMFFilter"),
+ threading(apartment),
+ uuid(607fd4e8-0a03-11d1-ab1d-00c04fc9b304)
+]
+coclass CoWMFFilter { }
+
+[
+ helpstring("CoICOFilter Class"),
+ progid("ICOFilter.CoICOFilter.1"),
+ vi_progid("ICOFilter.CoICOFilter"),
+ threading(apartment),
+ uuid(607fd4e8-0a03-11d1-ab1d-00c04fc9b304)
+]
+coclass CoICOFilter { }
+
+[
+ progid("IImgCtx"),
+ threading(apartment),
+ uuid(3050f3d6-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass IImgCtx { }
+
+[
+ helpstring("Microsoft HTML Load Options"),
+ threading(apartment),
+ uuid(18845040-0fa5-11d1-ba19-00c04fd912d0)
+]
+coclass HTMLLoadOptions { }
+
+[
+ helpstring("IntDitherer Class"),
+ threading(apartment),
+ uuid(05f6fe1a-ecef-11d0-aae7-00c04fc9b304)
+]
+coclass IntDitherer { }
+
+[
+ helpstring("Microsoft HTML Javascript Pluggable Protocol"),
+ threading(apartment),
+ uuid(3050f3b2-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass JSProtocol { }
+
+[
+ helpstring("Microsoft HTML Mailto Pluggable Protocol"),
+ threading(apartment),
+ uuid(3050f3da-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass MailtoProtocol { }
+
+[
+ helpstring("MHTML Document"),
+ progid("mhtmlfile"),
+ threading(apartment),
+ version(6.0),
+ uuid(3050f3d9-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass MHTMLDocument { }
+
+[
+ helpstring("Microsoft HTML Resource Pluggable Protocol"),
+ threading(apartment),
+ uuid(3050f3bc-98b5-11cf-bb82-00aa00bdce0b)
+]
+coclass ResProtocol { }
+
+[
+ helpstring("Microsoft HTML Resource Pluggable Protocol"),
+ threading(apartment),
+ uuid(76e67a63-06e9-11d2-a840-006008059382)
+]
+coclass SysimageProtocol { }
+
+[
+ helpstring("Trident API"),
+ threading(apartment),
+ uuid(429af92c-a51f-11d2-861e-00c04fa35c89)
+]
+coclass TridentAPI { }
diff --git a/dlls/mshtml/mshtml_tlb.idl b/dlls/mshtml/mshtml_tlb.idl
new file mode 100644
index 0000000..371cdaf
--- /dev/null
+++ b/dlls/mshtml/mshtml_tlb.idl
@@ -0,0 +1,19 @@
+/*
+ * Copyright 2007 Jacek Caban for CodeWeavers
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "mshtml.idl"