ole32: Don't register interfaces that belong to actxprxy.

This commit is contained in:
Alexandre Julliard 2009-09-11 12:44:15 +02:00
parent b76b5b7410
commit f5ed7868ee
1 changed files with 27 additions and 37 deletions

View File

@ -408,9 +408,6 @@ static GUID const CLSID_StdOleLink = {
static GUID const CLSID_PackagerMoniker = { static GUID const CLSID_PackagerMoniker = {
0x00000308, 0x0000, 0x0000, {0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46} }; 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_Metafile;
extern GUID const CLSID_Picture_Dib; extern GUID const CLSID_Picture_Dib;
@ -510,42 +507,35 @@ static struct regsvr_coclass const coclass_list[] = {
* interface list * interface list
*/ */
#define INTERFACE_ENTRY(interface, base, clsid32) { &IID_##interface, #interface, base, sizeof(interface##Vtbl)/sizeof(void*), NULL, clsid32 } #define INTERFACE_ENTRY(interface, base) { &IID_##interface, #interface, base, sizeof(interface##Vtbl)/sizeof(void*), NULL, NULL }
#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)
static const struct regsvr_interface interface_list[] = { static const struct regsvr_interface interface_list[] = {
LCL_INTERFACE_ENTRY(IUnknown), INTERFACE_ENTRY( IUnknown, NULL ),
LCL_INTERFACE_ENTRY(IMalloc), INTERFACE_ENTRY( IMalloc, NULL ),
LCL_INTERFACE_ENTRY(IMarshal), INTERFACE_ENTRY( IMarshal, NULL ),
BAS_INTERFACE_ENTRY(IMoniker, IPersistStream), INTERFACE_ENTRY( IMoniker, &IID_IPersistStream ),
LCL_INTERFACE_ENTRY(IMessageFilter), INTERFACE_ENTRY( IMessageFilter, NULL ),
LCL_INTERFACE_ENTRY(IStdMarshalInfo), INTERFACE_ENTRY( IStdMarshalInfo, NULL ),
LCL_INTERFACE_ENTRY(IExternalConnection), INTERFACE_ENTRY( IExternalConnection, NULL ),
LCL_INTERFACE_ENTRY(IMallocSpy), INTERFACE_ENTRY( IMallocSpy, NULL ),
LCL_INTERFACE_ENTRY(IMultiQI), INTERFACE_ENTRY( IMultiQI, NULL ),
BAS_INTERFACE_ENTRY(IPersistStream, IPersist), INTERFACE_ENTRY( IPersistStream, &IID_IPersist ),
BAS_INTERFACE_ENTRY(IPersistStorage, IPersist), INTERFACE_ENTRY( IPersistStorage, &IID_IPersist ),
BAS_INTERFACE_ENTRY(IPersistFile, IPersist), INTERFACE_ENTRY( IPersistFile, &IID_IPersist ),
LCL_INTERFACE_ENTRY(IDataAdviseHolder), INTERFACE_ENTRY( IDataAdviseHolder, NULL ),
LCL_INTERFACE_ENTRY(IOleAdviseHolder), INTERFACE_ENTRY( IOleAdviseHolder, NULL ),
BAS_INTERFACE_ENTRY(IOleInPlaceObject, IOleWindow), INTERFACE_ENTRY( IOleInPlaceObject, &IID_IOleWindow ),
BAS_INTERFACE_ENTRY(IOleInPlaceUIWindow, IOleWindow), INTERFACE_ENTRY( IOleInPlaceUIWindow, &IID_IOleWindow ),
BAS_INTERFACE_ENTRY(IOleInPlaceActiveObject, IOleWindow), INTERFACE_ENTRY( IOleInPlaceActiveObject, &IID_IOleWindow ),
BAS_INTERFACE_ENTRY(IOleInPlaceSite, IOleWindow), INTERFACE_ENTRY( IOleInPlaceSite, &IID_IOleWindow ),
BAS_INTERFACE_ENTRY(IOleContainer, IParseDisplayName), INTERFACE_ENTRY( IOleContainer, &IID_IParseDisplayName ),
BAS_INTERFACE_ENTRY(IOleItemContainer, IOleContainer), INTERFACE_ENTRY( IOleItemContainer, &IID_IOleContainer ),
LCL_INTERFACE_ENTRY(IDropSource), INTERFACE_ENTRY( IDropSource, NULL ),
BAS_INTERFACE_ENTRY(IAdviseSink2, IAdviseSink), INTERFACE_ENTRY( IAdviseSink2, &IID_IAdviseSink ),
BAS_INTERFACE_ENTRY(IViewObject2, IViewObject), INTERFACE_ENTRY( IViewObject2, &IID_IViewObject ),
BAS_INTERFACE_ENTRY(IOleCache2, IOleCache), INTERFACE_ENTRY( IOleCache2, &IID_IOleCache ),
LCL_INTERFACE_ENTRY(IClientSecurity), INTERFACE_ENTRY( IClientSecurity, NULL ),
LCL_INTERFACE_ENTRY(IServerSecurity), INTERFACE_ENTRY( IServerSecurity, NULL ),
ACTX_INTERFACE_ENTRY(IEnumGUID),
ACTX_INTERFACE_ENTRY(IEnumCATEGORYINFO),
ACTX_INTERFACE_ENTRY(ICatRegister),
ACTX_INTERFACE_ENTRY(ICatInformation),
{ NULL } /* list terminator */ { NULL } /* list terminator */
}; };