Alexandre Julliard : ole32: Don' t register interfaces that belong to actxprxy.
Alexandre Julliard
julliard at winehq.org
Fri Sep 11 10:53:02 CDT 2009
Module: wine
Branch: master
Commit: f5ed7868ee769e7f0aba0125889f2419beb87158
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f5ed7868ee769e7f0aba0125889f2419beb87158
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Sep 11 12:44:15 2009 +0200
ole32: Don't register interfaces that belong to actxprxy.
---
dlls/ole32/regsvr.c | 64 +++++++++++++++++++++-----------------------------
1 files changed, 27 insertions(+), 37 deletions(-)
diff --git a/dlls/ole32/regsvr.c b/dlls/ole32/regsvr.c
index 17e78ef..b124a16 100644
--- a/dlls/ole32/regsvr.c
+++ b/dlls/ole32/regsvr.c
@@ -408,9 +408,6 @@ static GUID const CLSID_StdOleLink = {
static GUID const CLSID_PackagerMoniker = {
0x00000308, 0x0000, 0x0000, {0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46} };
-static GUID const CLSID_PSFactoryBuffer_actxprxy = {
- 0xB8DA6310, 0xE19B, 0x11D0, {0x93,0x3C,0x00,0xA0,0xC9,0x0D,0xCA,0xA9} };
-
extern GUID const CLSID_Picture_Metafile;
extern GUID const CLSID_Picture_Dib;
@@ -510,42 +507,35 @@ static struct regsvr_coclass const coclass_list[] = {
* interface list
*/
-#define INTERFACE_ENTRY(interface, base, clsid32) { &IID_##interface, #interface, base, sizeof(interface##Vtbl)/sizeof(void*), NULL, clsid32 }
-#define BAS_INTERFACE_ENTRY(interface, base) INTERFACE_ENTRY(interface, &IID_##base, NULL)
-#define ACTX_INTERFACE_ENTRY(interface) INTERFACE_ENTRY(interface, NULL, &CLSID_PSFactoryBuffer_actxprxy)
-#define LCL_INTERFACE_ENTRY(interface) INTERFACE_ENTRY(interface, NULL, NULL)
+#define INTERFACE_ENTRY(interface, base) { &IID_##interface, #interface, base, sizeof(interface##Vtbl)/sizeof(void*), NULL, NULL }
static const struct regsvr_interface interface_list[] = {
- LCL_INTERFACE_ENTRY(IUnknown),
- LCL_INTERFACE_ENTRY(IMalloc),
- LCL_INTERFACE_ENTRY(IMarshal),
- BAS_INTERFACE_ENTRY(IMoniker, IPersistStream),
- LCL_INTERFACE_ENTRY(IMessageFilter),
- LCL_INTERFACE_ENTRY(IStdMarshalInfo),
- LCL_INTERFACE_ENTRY(IExternalConnection),
- LCL_INTERFACE_ENTRY(IMallocSpy),
- LCL_INTERFACE_ENTRY(IMultiQI),
- BAS_INTERFACE_ENTRY(IPersistStream, IPersist),
- BAS_INTERFACE_ENTRY(IPersistStorage, IPersist),
- BAS_INTERFACE_ENTRY(IPersistFile, IPersist),
- LCL_INTERFACE_ENTRY(IDataAdviseHolder),
- LCL_INTERFACE_ENTRY(IOleAdviseHolder),
- BAS_INTERFACE_ENTRY(IOleInPlaceObject, IOleWindow),
- BAS_INTERFACE_ENTRY(IOleInPlaceUIWindow, IOleWindow),
- BAS_INTERFACE_ENTRY(IOleInPlaceActiveObject, IOleWindow),
- BAS_INTERFACE_ENTRY(IOleInPlaceSite, IOleWindow),
- BAS_INTERFACE_ENTRY(IOleContainer, IParseDisplayName),
- BAS_INTERFACE_ENTRY(IOleItemContainer, IOleContainer),
- LCL_INTERFACE_ENTRY(IDropSource),
- BAS_INTERFACE_ENTRY(IAdviseSink2, IAdviseSink),
- BAS_INTERFACE_ENTRY(IViewObject2, IViewObject),
- BAS_INTERFACE_ENTRY(IOleCache2, IOleCache),
- LCL_INTERFACE_ENTRY(IClientSecurity),
- LCL_INTERFACE_ENTRY(IServerSecurity),
- ACTX_INTERFACE_ENTRY(IEnumGUID),
- ACTX_INTERFACE_ENTRY(IEnumCATEGORYINFO),
- ACTX_INTERFACE_ENTRY(ICatRegister),
- ACTX_INTERFACE_ENTRY(ICatInformation),
+ INTERFACE_ENTRY( IUnknown, NULL ),
+ INTERFACE_ENTRY( IMalloc, NULL ),
+ INTERFACE_ENTRY( IMarshal, NULL ),
+ INTERFACE_ENTRY( IMoniker, &IID_IPersistStream ),
+ INTERFACE_ENTRY( IMessageFilter, NULL ),
+ INTERFACE_ENTRY( IStdMarshalInfo, NULL ),
+ INTERFACE_ENTRY( IExternalConnection, NULL ),
+ INTERFACE_ENTRY( IMallocSpy, NULL ),
+ INTERFACE_ENTRY( IMultiQI, NULL ),
+ INTERFACE_ENTRY( IPersistStream, &IID_IPersist ),
+ INTERFACE_ENTRY( IPersistStorage, &IID_IPersist ),
+ INTERFACE_ENTRY( IPersistFile, &IID_IPersist ),
+ INTERFACE_ENTRY( IDataAdviseHolder, NULL ),
+ INTERFACE_ENTRY( IOleAdviseHolder, NULL ),
+ INTERFACE_ENTRY( IOleInPlaceObject, &IID_IOleWindow ),
+ INTERFACE_ENTRY( IOleInPlaceUIWindow, &IID_IOleWindow ),
+ INTERFACE_ENTRY( IOleInPlaceActiveObject, &IID_IOleWindow ),
+ INTERFACE_ENTRY( IOleInPlaceSite, &IID_IOleWindow ),
+ INTERFACE_ENTRY( IOleContainer, &IID_IParseDisplayName ),
+ INTERFACE_ENTRY( IOleItemContainer, &IID_IOleContainer ),
+ INTERFACE_ENTRY( IDropSource, NULL ),
+ INTERFACE_ENTRY( IAdviseSink2, &IID_IAdviseSink ),
+ INTERFACE_ENTRY( IViewObject2, &IID_IViewObject ),
+ INTERFACE_ENTRY( IOleCache2, &IID_IOleCache ),
+ INTERFACE_ENTRY( IClientSecurity, NULL ),
+ INTERFACE_ENTRY( IServerSecurity, NULL ),
{ NULL } /* list terminator */
};
More information about the wine-cvs
mailing list