Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2004-01-02 01:34:20 +0300
committerDanny Smith <dannysmith@users.sourceforge.net>2004-01-02 01:34:20 +0300
commitc8b0d378a79e9baf9d34221c60771ec2647eb312 (patch)
tree4cb647f20fa624478976b55d04d3b7114ca4b0a2
parent8e2d4325246de79f4a14978e89496e720e57fb0d (diff)
2004-01-01 Filip Navara <xnavara@volny.cz>
* include/objbase.h: Don't care about value of DBG define. * include/objidl.h: Add some COBJMACROS. * include/ocidl.h: Ditto. * include/oleidl.h: Ditto. * include/servprov.h: Ditto. * include/shlobj.h: Ditto. * include/shlobj.h (IContextMenu2): Correct parent in DECLARE_INTERFACE. * include/oleidl.h (IOleCache, IOleCache2, IOleCacheControl): Define interfaces. * include/setupapi.h (SetupGetLineTextA): Correct prototype. Add new constants for _SETUPAPI_VER >= 0x501.
-rw-r--r--winsup/w32api/ChangeLog15
-rw-r--r--winsup/w32api/include/objbase.h2
-rw-r--r--winsup/w32api/include/objidl.h4
-rw-r--r--winsup/w32api/include/ocidl.h60
-rw-r--r--winsup/w32api/include/oleidl.h145
-rw-r--r--winsup/w32api/include/servprov.h7
-rw-r--r--winsup/w32api/include/setupapi.h28
-rw-r--r--winsup/w32api/include/shlobj.h62
8 files changed, 318 insertions, 5 deletions
diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog
index 9054847af..b937bc01b 100644
--- a/winsup/w32api/ChangeLog
+++ b/winsup/w32api/ChangeLog
@@ -1,5 +1,20 @@
2004-01-01 Filip Navara <xnavara@volny.cz>
+ * include/objbase.h: Don't care about value of DBG define.
+ * include/objidl.h: Add some COBJMACROS.
+ * include/ocidl.h: Ditto.
+ * include/oleidl.h: Ditto.
+ * include/servprov.h: Ditto.
+ * include/shlobj.h: Ditto.
+ * include/shlobj.h (IContextMenu2): Correct parent in
+ DECLARE_INTERFACE.
+ * include/oleidl.h (IOleCache, IOleCache2, IOleCacheControl):
+ Define interfaces.
+ * include/setupapi.h (SetupGetLineTextA): Correct prototype.
+ Add new constants for _SETUPAPI_VER >= 0x501.
+
+2004-01-01 Filip Navara <xnavara@volny.cz>
+
* include/winnt.h (NtCurrentTeb): Add inline definition.
2004-01-01 Martin Fuchs <martin-fuchs@gmx.net>
diff --git a/winsup/w32api/include/objbase.h b/winsup/w32api/include/objbase.h
index 3480b7b76..fcf328ffa 100644
--- a/winsup/w32api/include/objbase.h
+++ b/winsup/w32api/include/objbase.h
@@ -92,7 +92,7 @@ WINOLEAPI_(DWORD) CoGetCurrentProcess(void);
WINOLEAPI CoRegisterMallocSpy(LPMALLOCSPY);
WINOLEAPI CoRevokeMallocSpy(void);
WINOLEAPI CoCreateStandardMalloc(DWORD,IMalloc**);
-#if DBG == 1
+#ifdef DBG
WINOLEAPI_(ULONG) DebugCoGetRpcFault(void);
WINOLEAPI_(void) DebugCoSetRpcFault(ULONG);
#endif
diff --git a/winsup/w32api/include/objidl.h b/winsup/w32api/include/objidl.h
index f33f8a319..544b1720c 100644
--- a/winsup/w32api/include/objidl.h
+++ b/winsup/w32api/include/objidl.h
@@ -1702,6 +1702,10 @@ HRESULT STDMETHODCALLTYPE ILockBytes_WriteAt_Stub(ILockBytes*,ULARGE_INTEGER,BYT
#define IPSFactoryBuffer_Release(This) (This)->lpVtbl->Release(This)
#define IPSFactoryBuffer_CreateProxy(T,U,r,P,p) (T)->lpVtbl->CreateProxy(T,U,r,P,p)
#define IPSFactoryBuffer_CreateStub(T,r,U,p) (T)->lpVtbl->CreateStub(T,r,U,p)
+#define IClassActivator_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IClassActivator_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IClassActivator_Release(T) (T)->lpVtbl->Release(T)
+#define IClassActivator_GetClassObject(T,a,b,c,d,e) (T)->lpVtbl->GetClassObject(T,a,b,c,d,e)
#endif /* COBJMACROS */
#endif
diff --git a/winsup/w32api/include/ocidl.h b/winsup/w32api/include/ocidl.h
index d856b48fe..2bffff71e 100644
--- a/winsup/w32api/include/ocidl.h
+++ b/winsup/w32api/include/ocidl.h
@@ -110,6 +110,19 @@ DECLARE_INTERFACE_(IOleControlSite,IUnknown)
STDMETHOD(ShowPropertyFrame)(THIS) PURE;
};
+#ifdef COBJMACROS
+#define IOleControlSite_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleControlSite_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleControlSite_Release(T) (T)->lpVtbl->Release(T)
+#define IOleControlSite_OnControlInfoChanged(T) (T)->lpVtbl->OnControlInfoChanged(T)
+#define IOleControlSite_LockInPlaceActive(T,a) (T)->lpVtbl->LockInPlaceActive(T,a)
+#define IOleControlSite_GetExtendedControl(T,a) (T)->lpVtbl->GetExtendedControl(T,a)
+#define IOleControlSite_TransformCoords(T,a,b,c) (T)->lpVtbl->TransformCoords(T,a,b,c)
+#define IOleControlSite_TranslateAccelerator(T,a,b) (T)->lpVtbl->TranslateAccelerator(T,a,b)
+#define IOleControlSite_OnFocus(T,a) (T)->lpVtbl->OnFocus(T,a)
+#define IOleControlSite_ShowPropertyFrame(T) (T)->lpVtbl->ShowPropertyFrame(T)
+#endif
+
EXTERN_C const IID IID_ISimpleFrameSite;
#undef INTERFACE
#define INTERFACE ISimpleFrameSite
@@ -159,6 +172,16 @@ DECLARE_INTERFACE_(IPersistPropertyBag,IPersist)
STDMETHOD(Save)(THIS_ LPPROPERTYBAG,BOOL,BOOL) PURE;
};
+#ifdef COBJMACROS
+#define IPersistPropertyBag_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IPersistPropertyBag_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IPersistPropertyBag_Release(T) (T)->lpVtbl->Release(T)
+#define IPersistPropertyBag_GetClassID(T,a) (T)->lpVtbl->GetClassID(T,a)
+#define IPersistPropertyBag_InitNew(T) (T)->lpVtbl->InitNew(T)
+#define IPersistPropertyBag_Load(T,a,b) (T)->lpVtbl->Load(T,a,b)
+#define IPersistPropertyBag_Save(T,a,b,c) (T)->lpVtbl->Save(T,a,b,c)
+#endif
+
EXTERN_C const IID IID_IPersistStreamInit;
#undef INTERFACE
#define INTERFACE IPersistStreamInit
@@ -203,6 +226,14 @@ DECLARE_INTERFACE_(IPropertyNotifySink,IUnknown)
STDMETHOD(OnRequestEdit)(THIS_ DISPID) PURE;
};
+#ifdef COBJMACROS
+#define IPropertyNotifySink_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IPropertyNotifySink_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IPropertyNotifySink_Release(T) (T)->lpVtbl->Release(T)
+#define IPropertyNotifySink_OnChanged(T,a) (T)->lpVtbl->OnChanged(T,a)
+#define IPropertyNotifySink_OnRequestEdit(T,a) (T)->lpVtbl->OnRequestEdit(T,a)
+#endif
+
EXTERN_C const IID IID_IProvideClassInfo;
#undef INTERFACE
#define INTERFACE IProvideClassInfo
@@ -238,6 +269,14 @@ DECLARE_INTERFACE_(IConnectionPointContainer,IUnknown)
STDMETHOD(FindConnectionPoint)(THIS_ REFIID,LPCONNECTIONPOINT*) PURE;
};
+#ifdef COBJMACROS
+#define IConnectionPointContainer_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IConnectionPointContainer_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IConnectionPointContainer_Release(T) (T)->lpVtbl->Release(T)
+#define IConnectionPointContainer_EnumConnectionPoints(T,a) (T)->lpVtbl->EnumConnectionPoints(T,a)
+#define IConnectionPointContainer_FindConnectionPoint(T,a,b) (T)->lpVtbl->FindConnectionPoint(T,a,b)
+#endif
+
EXTERN_C const IID IID_IEnumConnectionPoints;
#undef INTERFACE
#define INTERFACE IEnumConnectionPoints
@@ -267,6 +306,17 @@ DECLARE_INTERFACE_(IConnectionPoint,IUnknown)
STDMETHOD(EnumConnections)(THIS_ LPENUMCONNECTIONS*) PURE;
};
+#ifdef COBJMACROS
+#define IConnectionPoint_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IConnectionPoint_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IConnectionPoint_Release(T) (T)->lpVtbl->Release(T)
+#define IConnectionPoint_GetConnectionInterface(T,a) (T)->lpVtbl->GetConnectionInterface(T,a)
+#define IConnectionPoint_GetConnectionPointContainer(T,a) (T)->lpVtbl->GetConnectionPointContainer(T,a)
+#define IConnectionPoint_Advise(T,a,b) (T)->lpVtbl->Advise(T,a,b)
+#define IConnectionPoint_Unadvise(T,a) (T)->lpVtbl->Unadvise(T,a)
+#define IConnectionPoint_EnumConnections(T,a) (T)->lpVtbl->EnumConnections(T,a)
+#endif
+
EXTERN_C const IID IID_IEnumConnections;
#undef INTERFACE
#define INTERFACE IEnumConnections
@@ -281,6 +331,16 @@ DECLARE_INTERFACE_(IEnumConnections,IUnknown)
STDMETHOD(Clone)(THIS_ LPENUMCONNECTIONS*) PURE;
};
+#ifdef COBJMACROS
+#define IEnumConnections_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IEnumConnections_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IEnumConnections_Release(T) (T)->lpVtbl->Release(T)
+#define IEnumConnections_Next(T,a,b,c) (T)->lpVtbl->Next(T,a,b,c)
+#define IEnumConnections_Skip(T,a) (T)->lpVtbl->Skip(T,a)
+#define IEnumConnections_Reset(T) (T)->lpVtbl->Reset(T)
+#define IEnumConnections_Clone(T,a) (T)->lpVtbl->Clone(T,a)
+#endif
+
EXTERN_C const IID IID_IClassFactory2;
#undef INTERFACE
#define INTERFACE IClassFactory2
diff --git a/winsup/w32api/include/oleidl.h b/winsup/w32api/include/oleidl.h
index 9d919b195..f3a38d520 100644
--- a/winsup/w32api/include/oleidl.h
+++ b/winsup/w32api/include/oleidl.h
@@ -27,6 +27,9 @@ typedef interface IOleInPlaceFrame *LPOLEINPLACEFRAME;
typedef interface IOleAdviseHolder *LPOLEADVISEHOLDER;
typedef interface IViewObject *LPVIEWOBJECT;
typedef interface IViewObject2 *LPVIEWOBJECT2;
+typedef interface IOleCache *LPOLECACHE;
+typedef interface IOleCache2 *LPOLECACHE2;
+typedef interface IOleCacheControl *LPOLECACHECONTROL;
typedef enum tagOLEWHICHMK {
OLEWHICHMK_CONTAINER=1,
@@ -140,6 +143,18 @@ DECLARE_INTERFACE_(IOleClientSite,IUnknown)
STDMETHOD(RequestNewObjectLayout)(THIS) PURE;
};
+#ifdef COBJMACROS
+#define IOleClientSite_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleClientSite_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleClientSite_Release(T) (T)->lpVtbl->Release(T)
+#define IOleClientSite_SaveObject(T) (T)->lpVtbl->SaveObject(T)
+#define IOleClientSite_GetMoniker(T,a,b,c) (T)->lpVtbl->GetMoniker(T,a,b,c)
+#define IOleClientSite_GetContainer(T,a) (T)->lpVtbl->GetContainer(T,a)
+#define IOleClientSite_ShowObject(T) (T)->lpVtbl->ShowObject(T)
+#define IOleClientSite_OnShowWindow(T,a) (T)->lpVtbl->OnShowWindow(T,a)
+#define IOleClientSite_RequestNewObjectLayout(T) (T)->lpVtbl->RequestNewObjectLayout(T)
+#endif
+
EXTERN_C const IID IID_IOleObject;
#undef INTERFACE
#define INTERFACE IOleObject
@@ -183,6 +198,14 @@ DECLARE_INTERFACE_(IOleWindow,IUnknown)
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
};
+#ifdef COBJMACROS
+#define IOleWindow_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleWindow_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleWindow_Release(T) (T)->lpVtbl->Release(T)
+#define IOleWindow_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
+#define IOleWindow_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
+#endif
+
EXTERN_C const IID IID_IOleInPlaceUIWindow;
#undef INTERFACE
#define INTERFACE IOleInPlaceUIWindow
@@ -254,6 +277,24 @@ DECLARE_INTERFACE_(IOleInPlaceFrame,IOleInPlaceUIWindow)
STDMETHOD(TranslateAccelerator)(THIS_ LPMSG,WORD) PURE;
};
+#ifdef COBJMACROS
+#define IOleInPlaceFrame_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleInPlaceFrame_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleInPlaceFrame_Release(T) (T)->lpVtbl->Release(T)
+#define IOleInPlaceFrame_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
+#define IOleInPlaceFrame_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
+#define IOleInPlaceFrame_GetBorder(T,a) (T)->lpVtbl->GetBorder(T,a)
+#define IOleInPlaceFrame_RequestBorderSpace(T,a) (T)->lpVtbl->RequestBorderSpace(T,a)
+#define IOleInPlaceFrame_SetBorderSpace(T,a) (T)->lpVtbl->SetBorderSpace(T,a)
+#define IOleInPlaceFrame_SetActiveObject(T,a,b) (T)->lpVtbl->SetActiveObject(T,a,b)
+#define IOleInPlaceFrame_InsertMenus(T,a,b) (T)->lpVtbl->InsertMenus(T,a,b)
+#define IOleInPlaceFrame_SetMenu(T,a,b,c) (T)->lpVtbl->SetMenu(T,a,b,c)
+#define IOleInPlaceFrame_RemoveMenus(T,a) (T)->lpVtbl->RemoveMenus(T,a)
+#define IOleInPlaceFrame_SetStatusText(T,a) (T)->lpVtbl->SetStatusText(T,a)
+#define IOleInPlaceFrame_EnableModeless(T,a) (T)->lpVtbl->EnableModeless(T,a)
+#define IOleInPlaceFrame_TranslateAccelerator(T,a,b) (T)->lpVtbl->TranslateAccelerator(T,a,b)
+#endif
+
EXTERN_C const IID IID_IOleInPlaceSite;
#undef INTERFACE
#define INTERFACE IOleInPlaceSite
@@ -292,6 +333,18 @@ DECLARE_INTERFACE_(IOleAdviseHolder,IUnknown)
STDMETHOD(SendOnClose)(THIS) PURE;
};
+#ifdef COBJMACROS
+#define IOleAdviseHolder_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleAdviseHolder_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleAdviseHolder_Release(T) (T)->lpVtbl->Release(T)
+#define IOleAdviseHolder_Advise(T,a,b) (T)->lpVtbl->Advise(T,a,b)
+#define IOleAdviseHolder_Unadvise(T,a) (T)->lpVtbl->Unadvise(T,a)
+#define IOleAdviseHolder_EnumAdvise(T,a) (T)->lpVtbl->EnumAdvise(T,a)
+#define IOleAdviseHolder_SendOnRename(T,a) (T)->lpVtbl->SendOnRename(T,a)
+#define IOleAdviseHolder_SendOnSave(T) (T)->lpVtbl->SendOnSave(T)
+#define IOleAdviseHolder_SendOnClose(T) (T)->lpVtbl->SendOnClose(T)
+#endif
+
EXTERN_C const IID IID_IDropSource;
#undef INTERFACE
#define INTERFACE IDropSource
@@ -335,6 +388,18 @@ DECLARE_INTERFACE_(IViewObject,IUnknown)
STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
};
+#ifdef COBJMACROS
+#define IViewObject_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IViewObject_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IViewObject_Release(T) (T)->lpVtbl->Release(T)
+#define IViewObject_Draw(T,a,b,c,d,e,f,g,h,i,j) (T)->lpVtbl->Draw(T,a,b,c,d,e,f,g,h,i,j)
+#define IViewObject_GetColorSet(T,a,b,c,d,e,f) (T)->lpVtbl->GetColorSet(T,a,b,c,d,e,f)
+#define IViewObject_Freeze(T,a,b,c,d) (T)->lpVtbl->Freeze(T,a,b,c,d)
+#define IViewObject_Unfreeze(T,a) (T)->lpVtbl->Unfreeze(T,a)
+#define IViewObject_SetAdvise(T,a,b,c) (T)->lpVtbl->SetAdvise(T,a,b,c)
+#define IViewObject_GetAdvise(T,a,b,c) (T)->lpVtbl->GetAdvise(T,a,b,c)
+#endif
+
EXTERN_C const IID IID_IViewObject2;
#undef INTERFACE
#define INTERFACE IViewObject2
@@ -352,6 +417,86 @@ DECLARE_INTERFACE_(IViewObject2,IViewObject)
STDMETHOD(GetExtent)(THIS_ DWORD,LONG,DVTARGETDEVICE*,LPSIZEL) PURE;
};
+#ifdef COBJMACROS
+#define IViewObject2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IViewObject2_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IViewObject2_Release(T) (T)->lpVtbl->Release(T)
+#define IViewObject2_Draw(T,a,b,c,d,e,f,g,h,i,j) (T)->lpVtbl->Draw(T,a,b,c,d,e,f,g,h,i,j)
+#define IViewObject2_GetColorSet(T,a,b,c,d,e,f) (T)->lpVtbl->GetColorSet(T,a,b,c,d,e,f)
+#define IViewObject2_Freeze(T,a,b,c,d) (T)->lpVtbl->Freeze(T,a,b,c,d)
+#define IViewObject2_Unfreeze(T,a) (T)->lpVtbl->Unfreeze(T,a)
+#define IViewObject2_SetAdvise(T,a,b,c) (T)->lpVtbl->SetAdvise(T,a,b,c)
+#define IViewObject2_GetAdvise(T,a,b,c) (T)->lpVtbl->GetAdvise(T,a,b,c)
+#define IViewObject2_GetExtent(T,a,b,c,d) (T)->lpVtbl->GetExtent(T,a,b,c,d)
+#endif
+
+EXTERN_C const IID IID_IOleCache;
+#undef INTERFACE
+#define INTERFACE IOleCache
+DECLARE_INTERFACE_(IOleCache,IUnknown)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(Cache)(THIS_ FORMATETC*,DWORD,DWORD*) PURE;
+ STDMETHOD(Uncache)(THIS_ DWORD) PURE;
+ STDMETHOD(EnumCache)(THIS_ IEnumSTATDATA**);
+ STDMETHOD(InitCache)(THIS_ LPDATAOBJECT);
+ STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL);
+};
+
+#ifdef COBJMACROS
+#define IOleCache_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleCache_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleCache_Release(T) (T)->lpVtbl->Release(T)
+#define IOleCache_Cache(T,a,b,c) (T)->lpVtbl->Cache(T,a,b,c)
+#define IOleCache_Uncache(T,a) (T)->lpVtbl->Uncache(T,a)
+#define IOleCache_EnumCache(T,a) (T)->lpVtbl->EnumCache(T,a)
+#define IOleCache_InitCache(T,a) (T)->lpVtbl->InitCache(T,a)
+#define IOleCache_SetData(T,a,b,c) (T)->lpVtbl->SetData(T,a,b,c)
+#endif
+
+EXTERN_C const IID IID_IOleCache2;
+#undef INTERFACE
+#define INTERFACE IOleCache2
+DECLARE_INTERFACE_(IOleCache2,IOleCache)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(Cache)(THIS_ FORMATETC*,DWORD,DWORD*) PURE;
+ STDMETHOD(Uncache)(THIS_ DWORD) PURE;
+ STDMETHOD(EnumCache)(THIS_ IEnumSTATDATA**) PURE;
+ STDMETHOD(InitCache)(THIS_ LPDATAOBJECT) PURE;
+ STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
+ STDMETHOD(UpdateCache)(THIS_ LPDATAOBJECT,DWORD,LPVOID) PURE;
+ STDMETHOD(DiscardCache)(THIS_ DWORD) PURE;
+};
+
+#ifdef COBJMACROS
+#define IOleCache2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IOleCache2_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IOleCache2_Release(T) (T)->lpVtbl->Release(T)
+#define IOleCache2_Cache(T,a,b,c) (T)->lpVtbl->Cache(T,a,b,c)
+#define IOleCache2_Uncache(T,a) (T)->lpVtbl->Uncache(T,a)
+#define IOleCache2_EnumCache(T,a) (T)->lpVtbl->EnumCache(T,a)
+#define IOleCache2_InitCache(T,a) (T)->lpVtbl->InitCache(T,a)
+#define IOleCache2_SetData(T,a,b,c) (T)->lpVtbl->SetData(T,a,b,c)
+#define IOleCache2_UpdateCache(T,a,b,c) (T)->lpVtbl->UpdateCache(T,a,b,c)
+#define IOleCache2_DiscardCache(T,a) (T)->lpVtbl->DiscardCache(T,a)
+#endif
+
+EXTERN_C const IID IID_IOleCacheControl;
+#undef INTERFACE
+#define INTERFACE IOleCacheControl
+DECLARE_INTERFACE_(IOleCacheControl,IUnknown)
+{
+ STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ STDMETHOD(OnRun)(THIS_ LPDATAOBJECT) PURE;
+ STDMETHOD(OnStop)(THIS) PURE;
+};
#ifdef __cplusplus
}
diff --git a/winsup/w32api/include/servprov.h b/winsup/w32api/include/servprov.h
index b12e5d7a7..4905d69e4 100644
--- a/winsup/w32api/include/servprov.h
+++ b/winsup/w32api/include/servprov.h
@@ -20,6 +20,13 @@ DECLARE_INTERFACE_(IServiceProvider,IUnknown)
STDMETHOD(QueryService)(THIS_ REFGUID,REFIID,void**) PURE;
};
+#ifdef COBJMACROS
+#define IServiceProvider_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IServiceProvider_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IServiceProvider_Release(T) (T)->lpVtbl->Release(T)
+#define IServiceProvider_QueryService(T,a,b,c) (T)->lpVtbl->QueryService(T,a,b,c)
+#endif
+
#ifdef __cplusplus
}
#endif
diff --git a/winsup/w32api/include/setupapi.h b/winsup/w32api/include/setupapi.h
index 0fbc4626d..2202141f0 100644
--- a/winsup/w32api/include/setupapi.h
+++ b/winsup/w32api/include/setupapi.h
@@ -312,12 +312,33 @@ extern "C" {
#define FLG_ADDREG_APPEND 0x00000008
#define FLG_ADDREG_KEYONLY 0x00000010
#define FLG_ADDREG_OVERWRITEONLY 0x00000020
+#if (_SETUPAPI_VER >= 0x0501)
+#define FLG_ADDREG_64BITKEY 0x00001000
+#define FLG_ADDREG_KEYONLY_COMMON 0x00002000
+#define FLG_ADDREG_32BITKEY 0x00004000
+#define FLG_ADDREG_DELREG_BIT 0x00008000
+#endif
#define FLG_ADDREG_TYPE_MULTI_SZ 0x00010000
#define FLG_ADDREG_TYPE_EXPAND_SZ 0x00020000
#define FLG_ADDREG_TYPE_BINARY (0x00000000|FLG_ADDREG_BINVALUETYPE)
#define FLG_ADDREG_TYPE_DWORD (0x00010000|FLG_ADDREG_BINVALUETYPE)
#define FLG_ADDREG_TYPE_NONE (0x00020000|FLG_ADDREG_BINVALUETYPE)
#define FLG_ADDREG_TYPE_MASK (0xFFFF0000|FLG_ADDREG_BINVALUETYPE)
+#define FLG_DELREG_VALUE 0x00000000
+#if (_SETUPAPI_VER >= 0x0501)
+#define FLG_DELREG_TYPE_MASK FLG_ADDREG_TYPE_MASK
+#define FLG_DELREG_TYPE_SZ FLG_ADDREG_TYPE_SZ
+#define FLG_DELREG_TYPE_MULTI_SZ FLG_ADDREG_TYPE_MULTI_SZ
+#define FLG_DELREG_TYPE_EXPAND_SZ FLG_ADDREG_TYPE_EXPAND_SZ
+#define FLG_DELREG_TYPE_BINARY FLG_ADDREG_TYPE_BINARY
+#define FLG_DELREG_TYPE_DWORD FLG_ADDREG_TYPE_DWORD
+#define FLG_DELREG_TYPE_NONE FLG_ADDREG_TYPE_NONE
+#define FLG_DELREG_64BITKEY FLG_ADDREG_64BITKEY
+#define FLG_DELREG_KEYONLY_COMMON FLG_ADDREG_KEYONLY_COMMON
+#define FLG_DELREG_32BITKEY FLG_ADDREG_32BITKEY
+#define FLG_DELREG_OPERATION_MASK 0x000000FE
+#define FLG_DELREG_MULTI_SZ_DELSTRING (0x00000002|FLG_DELREG_TYPE_MULTI_SZ|FLG_ADDREG_DELREG_BIT)
+#endif
#define FLG_BITREG_CLEARBITS 0x00000000
#define FLG_BITREG_SETBITS 0x00000001
#define FLG_PROFITEM_CURRENTUSER 0x00000001
@@ -507,7 +528,12 @@ extern "C" {
#define SPINST_REGSVR 0x00000040
#define SPINST_UNREGSVR 0x00000080
#define SPINST_PROFILEITEMS 0x00000100
+#if (_SETUPAPI_VER >= 0x0501)
+#define SPINST_COPYINF 0x00000200
+#define SPINST_ALL 0x000003ff
+#else
#define SPINST_ALL 0x000001ff
+#endif
#define SPINST_SINGLESECTION 0x00010000
#define SPINST_LOGCONFIG_IS_FORCED 0x00020000
#define SPINST_LOGCONFIGS_ARE_OVERRIDES 0x00040000
@@ -1188,7 +1214,7 @@ WINSETUPAPI BOOL WINAPI SetupGetLineByIndexA(HINF,PCSTR,DWORD,PINFCONTEXT);
WINSETUPAPI BOOL WINAPI SetupGetLineByIndexW(HINF,PCWSTR,DWORD,PINFCONTEXT);
WINSETUPAPI LONG WINAPI SetupGetLineCountA(HINF,PCSTR);
WINSETUPAPI LONG WINAPI SetupGetLineCountW(HINF,PCWSTR);
-WINSETUPAPI BOOL WINAPI SetupGetLineTextA(PINFCONTEXT,HINF,PCSTR,PCSTR,DWORD,PDWORD);
+WINSETUPAPI BOOL WINAPI SetupGetLineTextA(PINFCONTEXT,HINF,PCSTR,PCSTR,PSTR,DWORD,PDWORD);
WINSETUPAPI BOOL WINAPI SetupGetLineTextW(PINFCONTEXT,HINF,PCWSTR,PCWSTR,PWSTR,DWORD,PDWORD);
WINSETUPAPI BOOL WINAPI SetupGetMultiSzFieldA(PINFCONTEXT,DWORD,PSTR,DWORD,LPDWORD);
WINSETUPAPI BOOL WINAPI SetupGetMultiSzFieldW(PINFCONTEXT,DWORD,PWSTR,DWORD,LPDWORD);
diff --git a/winsup/w32api/include/shlobj.h b/winsup/w32api/include/shlobj.h
index ac5c02568..99603c5d0 100644
--- a/winsup/w32api/include/shlobj.h
+++ b/winsup/w32api/include/shlobj.h
@@ -466,9 +466,18 @@ DECLARE_INTERFACE_(IContextMenu,IUnknown)
};
typedef IContextMenu *LPCONTEXTMENU;
+#ifdef COBJMACROS
+#define IContextMenu_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IContextMenu_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IContextMenu_Release(T) (T)->lpVtbl->Release(T)
+#define IContextMenu_QueryContextMenu(T,a,b,c,d,e) (T)->lpVtbl->QueryContextMenu(T,a,b,c,d,e)
+#define IContextMenu_InvokeCommand(T,a) (T)->lpVtbl->InvokeCommand(T,a)
+#define IContextMenu_GetCommandString(T,a,b,c,d,e) (T)->lpVtbl->GetCommandString(T,a,b,c,d,e)
+#endif
+
#undef INTERFACE
#define INTERFACE IContextMenu2
-DECLARE_INTERFACE_(IContextMenu2,IUnknown)
+DECLARE_INTERFACE_(IContextMenu2,IContextMenu)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
@@ -533,6 +542,16 @@ typedef enum {
SHCOLSTATE_PREFER_VARCMP = 0x00000200
} SHCOLSTATE;
+#ifdef COBJMACROS
+#define IContextMenu2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IContextMenu2_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IContextMenu2_Release(T) (T)->lpVtbl->Release(T)
+#define IContextMenu2_QueryContextMenu(T,a,b,c,d,e) (T)->lpVtbl->QueryContextMenu(T,a,b,c,d,e)
+#define IContextMenu2_InvokeCommand(T,a) (T)->lpVtbl->InvokeCommand(T,a)
+#define IContextMenu2_GetCommandString(T,a,b,c,d,e) (T)->lpVtbl->GetCommandString(T,a,b,c,d,e)
+#define IContextMenu2_HandleMenuMsg(T,a,b,c) (T)->lpVtbl->HandleMenuMsg(T,a,b,c)
+#endif
+
#undef INTERFACE
#define INTERFACE IColumnProvider
DECLARE_INTERFACE_(IColumnProvider,IUnknown)
@@ -685,6 +704,22 @@ DECLARE_INTERFACE_(IShellFolder, IUnknown)
};
typedef IShellFolder *LPSHELLFOLDER;
+#ifdef COBJMACROS
+#define IShellFolder_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IShellFolder_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IShellFolder_Release(T) (T)->lpVtbl->Release(T)
+#define IShellFolder_ParseDisplayName(T,a,b,c,d,e,f) (T)->lpVtbl->ParseDisplayName(T,a,b,c,d,e,f)
+#define IShellFolder_EnumObjects(T,a,b,c) (T)->lpVtbl->EnumObjects(T,a,b,c)
+#define IShellFolder_BindToObject(T,a,b,c,d) (T)->lpVtbl->BindToObject(T,a,b,c,d)
+#define IShellFolder_BindToStorage(T,a,b,c,d) (T)->lpVtbl->BindToStorage(T,a,b,c,d)
+#define IShellFolder_CompareIDs(T,a,b,c) (T)->lpVtbl->CompareIDs(T,a,b,c)
+#define IShellFolder_CreateViewObject(T,a,b) (T)->lpVtbl->CreateViewObject(T,a,b)
+#define IShellFolder_GetAttributesOf(T,a,b,c) (T)->lpVtbl->GetAttributesOf(T,a,b,c)
+#define IShellFolder_GetUIObjectOf(T,a,b,c,d,e,f) (T)->lpVtbl->GetUIObjectOf(T,a,b,c,d,e,f)
+#define IShellFolder_GetDisplayNameOf(T,a,b,c) (T)->lpVtbl->GetDisplayNameOf(T,a,b,c)
+#define IShellFolder_SetNameOf(T,a,b,c,d,e) (T)->lpVtbl->SetNameOf(T,a,b,c,d,e)
+#endif
+
#undef INTERFACE
#define INTERFACE ICopyHook
DECLARE_INTERFACE_(ICopyHook, IUnknown)
@@ -748,8 +783,8 @@ DECLARE_INTERFACE_(IShellBrowser,IOleWindow)
STDMETHOD(InsertMenusSB)(THIS_ HMENU,LPOLEMENUGROUPWIDTHS) PURE;
STDMETHOD(SetMenuSB)(THIS_ HMENU,HOLEMENU,HWND) PURE;
STDMETHOD(RemoveMenusSB)(THIS_ HMENU) PURE;
- STDMETHOD(SetStatusTextSB) (THIS_ LPCOLESTR) PURE;
- STDMETHOD(EnableModelessSB) (THIS_ BOOL ) PURE;
+ STDMETHOD(SetStatusTextSB)(THIS_ LPCOLESTR) PURE;
+ STDMETHOD(EnableModelessSB)(THIS_ BOOL) PURE;
STDMETHOD(TranslateAcceleratorSB) (THIS_ LPMSG,WORD) PURE;
STDMETHOD(BrowseObject)(THIS_ LPCITEMIDLIST,UINT) PURE;
STDMETHOD(GetViewStateStream)(THIS_ DWORD,LPSTREAM*) PURE;
@@ -760,6 +795,27 @@ DECLARE_INTERFACE_(IShellBrowser,IOleWindow)
STDMETHOD(SetToolbarItems)(THIS_ LPTBBUTTON,UINT,UINT) PURE;
};
+#ifdef COBJMACROS
+#define IShellBrowser_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
+#define IShellBrowser_AddRef(T) (T)->lpVtbl->AddRef(T)
+#define IShellBrowser_Release(T) (T)->lpVtbl->Release(T)
+#define IShellBrowser_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
+#define IShellBrowser_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
+#define IShellBrowser_InsertMenusSB(T,a,b) (T)->lpVtbl->InsertMenusSB(T,a,b)
+#define IShellBrowser_SetMenuSB(T,a,b,c) (T)->lpVtbl->SetMenuSB(T,a,b,c)
+#define IShellBrowser_RemoveMenusSB(T,a) (T)->lpVtbl->RemoveMenusSB(T,a)
+#define IShellBrowser_SetStatusTextSB(T,a) (T)->lpVtbl->SetStatusTextSB(T,a)
+#define IShellBrowser_EnableModelessSB(T,a) (T)->lpVtbl->EnableModelessSB(T,a)
+#define IShellBrowser_TranslateAcceleratorSB(T,a,b) (T)->lpVtbl->TranslateAcceleratorSB(T,a,b)
+#define IShellBrowser_BrowseObject(T,a,b) (T)->lpVtbl->BrowseObject(T,a,b)
+#define IShellBrowser_GetViewStateStream(T,a,b) (T)->lpVtbl->GetViewStateStream(T,a,b)
+#define IShellBrowser_GetControlWindow(T,a,b) (T)->lpVtbl->GetControlWindow(T,a,b)
+#define IShellBrowser_SendControlMsg(T,a,b,c,d,e) (T)->lpVtbl->SendControlMsg(T,a,b,c,d,e)
+#define IShellBrowser_QueryActiveShellView(T,a) (T)->lpVtbl->QueryActiveShellView(T,a)
+#define IShellBrowser_OnViewWindowActive(T,a) (T)->lpVtbl->OnViewWindowActive(T,a)
+#define IShellBrowser_SetToolbarItems(T,a,b,c) (T)->lpVtbl->SetToolbarItems(T,a,b,c)
+#endif
+
#undef INTERFACE
#define INTERFACE IShellView
DECLARE_INTERFACE_(IShellView,IOleWindow)