Can anyone find the
GUID
for
IOleUIObjInfo[
^]?
The is no guid associated with the interface in OleDlg.h - so I can't use
__uuidof(IOleUIObjInfo)
, and I can't find anything called
IID_IOleUIObjInfo
either. Still, I find it hard to believe that the interface does not have an identifying guid.
The interface is supposed to be implemented by Ole containers, and in Delphis' VCL this is the case, but Delphi (2009) defines the GUID as:
{ 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } };
Which I'm sure is not correct.
In OleDlg.h it's declared like this:
DECLARE_INTERFACE_(IOleUIObjInfoW, IUnknown)
{
STDMETHOD(QueryInterface) (THIS_ _In_ REFIID riid, _Outptr_ LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(GetObjectInfo) (THIS_ DWORD dwObject,
_Out_ DWORD FAR* lpdwObjSize,
_Outptr_opt_result_maybenull_ LPWSTR FAR* lplpszLabel,
_Outptr_opt_result_maybenull_ LPWSTR FAR* lplpszType,
_Outptr_opt_result_maybenull_ LPWSTR FAR* lplpszShortType,
_Outptr_opt_result_maybenull_ LPWSTR FAR* lplpszLocation) PURE;
STDMETHOD(GetConvertInfo) (THIS_ DWORD dwObject,
_Out_ CLSID FAR* lpClassID, _Out_ WORD FAR* lpwFormat,
_Out_ CLSID FAR* lpConvertDefaultClassID,
_Outptr_result_maybenull_ LPCLSID FAR* lplpClsidExclude,
_Out_opt_ UINT FAR* lpcClsidExclude) PURE;
STDMETHOD(ConvertObject) (THIS_ DWORD dwObject, _In_ REFCLSID clsidNew) PURE;
STDMETHOD(GetViewInfo) (THIS_ DWORD dwObject,
_In_opt_ HGLOBAL FAR* phMetaPict,
_In_opt_ DWORD* pdvAspect, _In_opt_ int* pnCurrentScale) PURE;
STDMETHOD(SetViewInfo) (THIS_ DWORD dwObject,
HGLOBAL hMetaPict, DWORD dvAspect,
int nCurrentScale, BOOL bRelativeToOrig) PURE;
};
While the documentation says it's derived from
IOleUILinkContainer[
^]
Ideas anybody?