ole32: Add a BaseInterface where needed.
This commit is contained in:
parent
91998b4d99
commit
9ed9398ebe
|
@ -499,6 +499,7 @@ static struct regsvr_coclass const coclass_list[] = {
|
|||
*/
|
||||
|
||||
#define INTERFACE_ENTRY(interface, base, clsid32, clsid16) { &IID_##interface, #interface, base, sizeof(interface##Vtbl)/sizeof(void*), clsid16, clsid32 }
|
||||
#define BAS_INTERFACE_ENTRY(interface, base) INTERFACE_ENTRY(interface, &IID_##base, &CLSID_PSFactoryBuffer, NULL)
|
||||
#define STD_INTERFACE_ENTRY(interface) INTERFACE_ENTRY(interface, NULL, &CLSID_PSFactoryBuffer, NULL)
|
||||
#define LCL_INTERFACE_ENTRY(interface) INTERFACE_ENTRY(interface, NULL, NULL, NULL)
|
||||
|
||||
|
@ -512,7 +513,7 @@ static const struct regsvr_interface interface_list[] = {
|
|||
STD_INTERFACE_ENTRY(IStream),
|
||||
STD_INTERFACE_ENTRY(IEnumSTATSTG),
|
||||
STD_INTERFACE_ENTRY(IBindCtx),
|
||||
STD_INTERFACE_ENTRY(IMoniker),
|
||||
BAS_INTERFACE_ENTRY(IMoniker, IPersistStream),
|
||||
STD_INTERFACE_ENTRY(IRunningObjectTable),
|
||||
STD_INTERFACE_ENTRY(IRootStorage),
|
||||
LCL_INTERFACE_ENTRY(IMessageFilter),
|
||||
|
@ -526,9 +527,9 @@ static const struct regsvr_interface interface_list[] = {
|
|||
STD_INTERFACE_ENTRY(IEnumFORMATETC),
|
||||
STD_INTERFACE_ENTRY(IEnumOLEVERB),
|
||||
STD_INTERFACE_ENTRY(IEnumSTATDATA),
|
||||
STD_INTERFACE_ENTRY(IPersistStream),
|
||||
STD_INTERFACE_ENTRY(IPersistStorage),
|
||||
STD_INTERFACE_ENTRY(IPersistFile),
|
||||
BAS_INTERFACE_ENTRY(IPersistStream, IPersist),
|
||||
BAS_INTERFACE_ENTRY(IPersistStorage, IPersist),
|
||||
BAS_INTERFACE_ENTRY(IPersistFile, IPersist),
|
||||
STD_INTERFACE_ENTRY(IPersist),
|
||||
STD_INTERFACE_ENTRY(IViewObject),
|
||||
STD_INTERFACE_ENTRY(IDataObject),
|
||||
|
@ -536,24 +537,24 @@ static const struct regsvr_interface interface_list[] = {
|
|||
LCL_INTERFACE_ENTRY(IDataAdviseHolder),
|
||||
LCL_INTERFACE_ENTRY(IOleAdviseHolder),
|
||||
STD_INTERFACE_ENTRY(IOleObject),
|
||||
STD_INTERFACE_ENTRY(IOleInPlaceObject),
|
||||
BAS_INTERFACE_ENTRY(IOleInPlaceObject, IOleWindow),
|
||||
STD_INTERFACE_ENTRY(IOleWindow),
|
||||
STD_INTERFACE_ENTRY(IOleInPlaceUIWindow),
|
||||
BAS_INTERFACE_ENTRY(IOleInPlaceUIWindow, IOleWindow),
|
||||
STD_INTERFACE_ENTRY(IOleInPlaceFrame),
|
||||
STD_INTERFACE_ENTRY(IOleInPlaceActiveObject),
|
||||
BAS_INTERFACE_ENTRY(IOleInPlaceActiveObject, IOleWindow),
|
||||
STD_INTERFACE_ENTRY(IOleClientSite),
|
||||
STD_INTERFACE_ENTRY(IOleInPlaceSite),
|
||||
BAS_INTERFACE_ENTRY(IOleInPlaceSite, IOleWindow),
|
||||
STD_INTERFACE_ENTRY(IParseDisplayName),
|
||||
STD_INTERFACE_ENTRY(IOleContainer),
|
||||
STD_INTERFACE_ENTRY(IOleItemContainer),
|
||||
BAS_INTERFACE_ENTRY(IOleContainer, IParseDisplayName),
|
||||
BAS_INTERFACE_ENTRY(IOleItemContainer, IOleContainer),
|
||||
STD_INTERFACE_ENTRY(IOleLink),
|
||||
STD_INTERFACE_ENTRY(IOleCache),
|
||||
LCL_INTERFACE_ENTRY(IDropSource),
|
||||
STD_INTERFACE_ENTRY(IDropTarget),
|
||||
STD_INTERFACE_ENTRY(IAdviseSink2),
|
||||
BAS_INTERFACE_ENTRY(IAdviseSink2, IAdviseSink),
|
||||
STD_INTERFACE_ENTRY(IRunnableObject),
|
||||
STD_INTERFACE_ENTRY(IViewObject2),
|
||||
STD_INTERFACE_ENTRY(IOleCache2),
|
||||
BAS_INTERFACE_ENTRY(IViewObject2, IViewObject),
|
||||
BAS_INTERFACE_ENTRY(IOleCache2, IOleCache),
|
||||
STD_INTERFACE_ENTRY(IOleCacheControl),
|
||||
STD_INTERFACE_ENTRY(IRemUnknown),
|
||||
LCL_INTERFACE_ENTRY(IClientSecurity),
|
||||
|
|
Loading…
Reference in New Issue