#ifndef COMPOBJ_H #define COMPOBJ_H #include "ole.h" struct tagGUID { DWORD Data1; WORD Data2; WORD Data3; BYTE Data4[8]; }; typedef struct tagGUID GUID,*LPGUID,*REFGUID; typedef struct tagGUID CLSID,*LPCLSID,*REFCLSID; typedef struct tagGUID IID,*REFIID,*LPIID; OLESTATUS WINAPI StringFromCLSID16(const CLSID *id, LPOLESTR16*); OLESTATUS WINAPI StringFromCLSID32(const CLSID *id, LPOLESTR32*); #define StringFromCLSID WINELIB_NAME(StringFromCLSID) OLESTATUS WINAPI CLSIDFromString16(LPCOLESTR16, CLSID *); OLESTATUS WINAPI CLSIDFromString32(LPCOLESTR32, CLSID *); #define CLSIDFromString WINELIB_NAME(CLSIDFromString) OLESTATUS WINAPI WINE_StringFromCLSID(const CLSID *id, LPSTR); INT32 WINAPI StringFromGUID2(REFGUID id, LPOLESTR32 str, INT32 cmax); #ifdef INITGUID #define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ const GUID name =\ { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } } #else #define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ extern const GUID name #endif #define DEFINE_OLEGUID(name, l, w1, w2) \ DEFINE_GUID(name, l, w1, w2, 0xC0,0,0,0,0,0,0,0x46) #define DEFINE_SHLGUID(name, l, w1, w2) DEFINE_OLEGUID(name,l,w1,w2) #endif