* include/aclui.h: Replace __OBJC__ guard with _OBJC_NO_COM.

* include/basetyps.h:  Likewise.
 	(_COM_interface): New define.
	(interface): Define to _COM_interface, conditional on !__OBJC__.
	Replace 'interface' with '_COM_interface', throughout.
  	* include/comcat.h: Replace 'interface' with '_COM_interface', throughout.
	* include/commdlg.h: Replace __OBJC__ guard with _OBJC_NO_COM.
	* include/docobj.h: Replace 'interface' with '_COM_interface', throughout.
	* include/mshtml.h: Likewise.
	* include/oaidl.h: Likewise.
	* include/objfwd.h: Likewise.
	* include/objidl.h: Likewise.
	* include/ocidl.h: Likwise.
	* include/olectl.h: Likewise.
	* include/oleidl.h: Likewise.
	* include/shlobj.h: Likewise.
	* include/shlwapi.h: Replace __OBJC__ guard with _OBJC_NO_COM.
	* include/vfw.h: Likewise.
	* include/windows.h. Likewise. Add comment.
	* include/directx/d3d9.h: Replace 'interface' with '_COM_interface',
	throughout.

	* lib/test.c: Replace __OBJC__ guard with _OBJC_NO_COM.
	Add test for conflict with '@interface'
This commit is contained in:
Danny Smith 2006-07-25 00:22:19 +00:00
parent e7a8c11c0f
commit d2d223b580
20 changed files with 238 additions and 192 deletions

View File

@ -1,3 +1,31 @@
2006-07-25 Danny Smith <dannysmith@users.sourceforge.net>
* include/aclui.h: Replace __OBJC__ guard with _OBJC_NO_COM.
* include/basetyps.h: Likewise.
(_COM_interface): New define.
(interface): Define to _COM_interface, conditional on !__OBJC__.
Replace 'interface' with '_COM_interface', throughout.
* include/comcat.h: Replace 'interface' with '_COM_interface', throughout.
* include/commdlg.h: Replace __OBJC__ guard with _OBJC_NO_COM.
* include/docobj.h: Replace 'interface' with '_COM_interface', throughout.
* include/mshtml.h: Likewise.
* include/oaidl.h: Likewise.
* include/objfwd.h: Likewise.
* include/objidl.h: Likewise.
* include/ocidl.h: Likwise.
* include/olectl.h: Likewise.
* include/oleidl.h: Likewise.
* include/shlobj.h: Likewise.
* include/shlwapi.h: Replace __OBJC__ guard with _OBJC_NO_COM.
* include/vfw.h: Likewise.
* include/windows.h. Likewise. Add comment.
* include/directx/d3d9.h: Replace 'interface' with '_COM_interface',
throughout.
* lib/test.c: Replace __OBJC__ guard with _OBJC_NO_COM.
Add test for conflict with '@interface'
2006-07-22 ipsoner <ipsoner@users.sourceforge.net> 2006-07-22 ipsoner <ipsoner@users.sourceforge.net>
* include/wincrypt.h (szOID_RSA, szOID_PKCS, szOID_RSA_HASH, * include/wincrypt.h (szOID_RSA, szOID_PKCS, szOID_RSA_HASH,
@ -61,7 +89,7 @@
2006-07-22 Chris Sutcliffe <ir0nh34d@users.sourceforge.net> 2006-07-22 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
* lib/uuid.c: Remove. * lib/uuid.c: Remove.
2006-07-20 Elias Naur <elias_naur@users.sourceforge.net> 2006-07-20 Elias Naur <elias_naur@users.sourceforge.net>

View File

@ -4,7 +4,7 @@
#pragma GCC system_header #pragma GCC system_header
#endif #endif
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
#include <objbase.h> #include <objbase.h>
#include <commctrl.h> #include <commctrl.h>
#include <accctrl.h> #include <accctrl.h>

View File

@ -4,7 +4,7 @@
#pragma GCC system_header #pragma GCC system_header
#endif #endif
#ifndef __OBJC__ #ifndef _OBJC_NO_COM_
# ifdef __cplusplus # ifdef __cplusplus
# define EXTERN_C extern "C" # define EXTERN_C extern "C"
# else # else
@ -40,7 +40,14 @@
# define STDAPIV_(t) EXTERN_C t STDAPIVCALLTYPE # define STDAPIV_(t) EXTERN_C t STDAPIVCALLTYPE
# define STDMETHODIMPV HRESULT STDMETHODVCALLTYPE # define STDMETHODIMPV HRESULT STDMETHODVCALLTYPE
# define STDMETHODIMPV_(t) t STDMETHODVCALLTYPE # define STDMETHODIMPV_(t) t STDMETHODVCALLTYPE
# define interface struct /* Newer MS compilers support the __interface keyword, but
that has a specific meaning that is enforced by the compiler.
For now, just get 'interface' out of the global namespace
for __OBJC__ */
# define _COM_interface struct
# ifndef __OBJC__
# define interface _COM_interface
# endif
# if defined(__cplusplus) && !defined(CINTERFACE) # if defined(__cplusplus) && !defined(CINTERFACE)
# define STDMETHOD(m) virtual HRESULT STDMETHODCALLTYPE m # define STDMETHOD(m) virtual HRESULT STDMETHODCALLTYPE m
# define STDMETHOD_(t,m) virtual t STDMETHODCALLTYPE m # define STDMETHOD_(t,m) virtual t STDMETHODCALLTYPE m
@ -52,11 +59,11 @@
g++ vtables are now COM-compatible by default g++ vtables are now COM-compatible by default
*/ */
# if defined(__GNUC__) && __GNUC__ < 3 && !defined(NOCOMATTRIBUTE) # if defined(__GNUC__) && __GNUC__ < 3 && !defined(NOCOMATTRIBUTE)
# define DECLARE_INTERFACE(i) interface __attribute__((com_interface)) i # define DECLARE_INTERFACE(i) _COM_interface __attribute__((com_interface)) i
# define DECLARE_INTERFACE_(i,b) interface __attribute__((com_interface)) i : public b # define DECLARE_INTERFACE_(i,b) _COM_interface __attribute__((com_interface)) i : public b
# else # else
# define DECLARE_INTERFACE(i) interface i # define DECLARE_INTERFACE(i) _COM_interface i
# define DECLARE_INTERFACE_(i,b) interface i : public b # define DECLARE_INTERFACE_(i,b) _COM_interface i : public b
# endif # endif
# else # else
# define STDMETHOD(m) HRESULT(STDMETHODCALLTYPE *m) # define STDMETHOD(m) HRESULT(STDMETHODCALLTYPE *m)
@ -68,7 +75,7 @@
# define CONST_VTABLE # define CONST_VTABLE
# endif # endif
# define DECLARE_INTERFACE(i) \ # define DECLARE_INTERFACE(i) \
typedef interface i { CONST_VTABLE struct i##Vtbl *lpVtbl; } i; \ typedef _COM_interface i { CONST_VTABLE struct i##Vtbl *lpVtbl; } i; \
typedef CONST_VTABLE struct i##Vtbl i##Vtbl; \ typedef CONST_VTABLE struct i##Vtbl i##Vtbl; \
CONST_VTABLE struct i##Vtbl CONST_VTABLE struct i##Vtbl
# define DECLARE_INTERFACE_(i,b) DECLARE_INTERFACE(i) # define DECLARE_INTERFACE_(i,b) DECLARE_INTERFACE(i)
@ -76,7 +83,7 @@
# define BEGIN_INTERFACE # define BEGIN_INTERFACE
# define END_INTERFACE # define END_INTERFACE
# define FWD_DECL(i) typedef interface i i # define FWD_DECL(i) typedef _COM_interface i i
# if defined(__cplusplus) && !defined(CINTERFACE) # if defined(__cplusplus) && !defined(CINTERFACE)
# define IENUM_THIS(T) # define IENUM_THIS(T)
# define IENUM_THIS_(T) # define IENUM_THIS_(T)
@ -97,7 +104,7 @@
} }
# define DECLARE_ENUMERATOR(T) DECLARE_ENUMERATOR_(IEnum##T,T) # define DECLARE_ENUMERATOR(T) DECLARE_ENUMERATOR_(IEnum##T,T)
#endif /* __OBJC__ */ #endif /* _OBJC_NO_COM_ */
#ifdef _GUID_DEFINED #ifdef _GUID_DEFINED
# warning _GUID_DEFINED is deprecated, use GUID_DEFINED instead # warning _GUID_DEFINED is deprecated, use GUID_DEFINED instead
@ -169,4 +176,4 @@ typedef unsigned long PROPID;
#define DEFINE_GUID(n,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) GUID_EXT const GUID n #define DEFINE_GUID(n,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) GUID_EXT const GUID n
#define DEFINE_OLEGUID(n,l,w1,w2) DEFINE_GUID(n,l,w1,w2,0xC0,0,0,0,0,0,0,0x46) #define DEFINE_OLEGUID(n,l,w1,w2) DEFINE_GUID(n,l,w1,w2,0xC0,0,0,0,0,0,0,0x46)
#endif #endif
#endif #endif

View File

@ -16,7 +16,7 @@ extern "C"{
#endif #endif
EXTERN_C const IID IID_IEnumGUID; EXTERN_C const IID IID_IEnumGUID;
typedef interface IEnumGUID *LPENUMGUID; typedef _COM_interface IEnumGUID *LPENUMGUID;
#define INTERFACE IEnumGUID #define INTERFACE IEnumGUID
DECLARE_INTERFACE_(IEnumGUID,IUnknown) DECLARE_INTERFACE_(IEnumGUID,IUnknown)
@ -79,13 +79,13 @@ EXTERN_C const CATID CATID_DesignTimeUIActivatableControl;
#define IID_IEnumCLSID IID_IEnumGUID #define IID_IEnumCLSID IID_IEnumGUID
EXTERN_C const IID IID_ICatInformation; EXTERN_C const IID IID_ICatInformation;
typedef interface ICatInformation *LPCATINFORMATION; typedef _COM_interface ICatInformation *LPCATINFORMATION;
EXTERN_C const IID IID_ICatRegister; EXTERN_C const IID IID_ICatRegister;
typedef interface ICatRegister *LPCATREGISTER; typedef _COM_interface ICatRegister *LPCATREGISTER;
EXTERN_C const IID IID_IEnumCATEGORYINFO; EXTERN_C const IID IID_IEnumCATEGORYINFO;
typedef interface IEnumCATEGORYINFO *LPENUMCATEGORYINFO; typedef _COM_interface IEnumCATEGORYINFO *LPENUMCATEGORYINFO;
EXTERN_C const CLSID CLSID_StdComponentCategoriesMgr; EXTERN_C const CLSID CLSID_StdComponentCategoriesMgr;

View File

@ -466,7 +466,7 @@ typedef struct tagPDW {
HANDLE hPrintTemplate; HANDLE hPrintTemplate;
HANDLE hSetupTemplate; HANDLE hSetupTemplate;
} PRINTDLGW,*LPPRINTDLGW; } PRINTDLGW,*LPPRINTDLGW;
#if (WINVER >= 0x0500) && !defined (__OBJC__) #if (WINVER >= 0x0500) && !defined (_OBJC_NO_COM)
#include <unknwn.h> /* for LPUNKNOWN */ #include <unknwn.h> /* for LPUNKNOWN */
#include <prsht.h> /* for HPROPSHEETPAGE */ #include <prsht.h> /* for HPROPSHEETPAGE */
typedef struct tagPRINTPAGERANGE { typedef struct tagPRINTPAGERANGE {
@ -540,7 +540,7 @@ BOOL WINAPI PrintDlgA(LPPRINTDLGA);
BOOL WINAPI PrintDlgW(LPPRINTDLGW); BOOL WINAPI PrintDlgW(LPPRINTDLGW);
HWND WINAPI ReplaceTextA(LPFINDREPLACEA); HWND WINAPI ReplaceTextA(LPFINDREPLACEA);
HWND WINAPI ReplaceTextW(LPFINDREPLACEW); HWND WINAPI ReplaceTextW(LPFINDREPLACEW);
#if (WINVER >= 0x0500) && !defined (__OBJC__) #if (WINVER >= 0x0500) && !defined (_OBJC_NO_COM)
HRESULT WINAPI PrintDlgExA(LPPRINTDLGEXA); HRESULT WINAPI PrintDlgExA(LPPRINTDLGEXA);
HRESULT WINAPI PrintDlgExW(LPPRINTDLGEXW); HRESULT WINAPI PrintDlgExW(LPPRINTDLGEXW);
#endif /* WINVER >= 0x0500 */ #endif /* WINVER >= 0x0500 */
@ -569,7 +569,7 @@ typedef PRINTDLGW PRINTDLG,*LPPRINTDLG;
#define PageSetupDlg PageSetupDlgW #define PageSetupDlg PageSetupDlgW
#define PrintDlg PrintDlgW #define PrintDlg PrintDlgW
#define ReplaceText ReplaceTextW #define ReplaceText ReplaceTextW
#if (WINVER >= 0x0500) && !defined (__OBJC__) #if (WINVER >= 0x0500) && !defined (_OBJC_NO_COM)
typedef PRINTDLGEXW PRINTDLGEX, *LPPRINTDLGEX; typedef PRINTDLGEXW PRINTDLGEX, *LPPRINTDLGEX;
#define PrintDlgEx PrintDlgExW #define PrintDlgEx PrintDlgExW
#endif /* WINVER >= 0x0500 */ #endif /* WINVER >= 0x0500 */
@ -597,7 +597,7 @@ typedef PRINTDLGA PRINTDLG,*LPPRINTDLG;
#define PageSetupDlg PageSetupDlgA #define PageSetupDlg PageSetupDlgA
#define PrintDlg PrintDlgA #define PrintDlg PrintDlgA
#define ReplaceText ReplaceTextA #define ReplaceText ReplaceTextA
#if (WINVER >= 0x0500) && !defined (__OBJC__) #if (WINVER >= 0x0500) && !defined (_OBJC_NO_COM)
typedef PRINTDLGEXA PRINTDLGEX, *LPPRINTDLGEX; typedef PRINTDLGEXA PRINTDLGEX, *LPPRINTDLGEX;
#define PrintDlgEx PrintDlgExA #define PrintDlgEx PrintDlgExA
#endif /* WINVER >= 0x0500 */ #endif /* WINVER >= 0x0500 */

View File

@ -98,23 +98,23 @@ extern const GUID IID_IDirect3DQuery9;
}; };
#endif #endif
typedef interface IDirect3D9 IDirect3D9; typedef _COM_interface IDirect3D9 IDirect3D9;
typedef interface IDirect3DDevice9 IDirect3DDevice9; typedef _COM_interface IDirect3DDevice9 IDirect3DDevice9;
typedef interface IDirect3DVolume9 IDirect3DVolume9; typedef _COM_interface IDirect3DVolume9 IDirect3DVolume9;
typedef interface IDirect3DSwapChain9 IDirect3DSwapChain9; typedef _COM_interface IDirect3DSwapChain9 IDirect3DSwapChain9;
typedef interface IDirect3DResource9 IDirect3DResource9; typedef _COM_interface IDirect3DResource9 IDirect3DResource9;
typedef interface IDirect3DSurface9 IDirect3DSurface9; typedef _COM_interface IDirect3DSurface9 IDirect3DSurface9;
typedef interface IDirect3DVertexBuffer9 IDirect3DVertexBuffer9; typedef _COM_interface IDirect3DVertexBuffer9 IDirect3DVertexBuffer9;
typedef interface IDirect3DIndexBuffer9 IDirect3DIndexBuffer9; typedef _COM_interface IDirect3DIndexBuffer9 IDirect3DIndexBuffer9;
typedef interface IDirect3DBaseTexture9 IDirect3DBaseTexture9; typedef _COM_interface IDirect3DBaseTexture9 IDirect3DBaseTexture9;
typedef interface IDirect3DCubeTexture9 IDirect3DCubeTexture9; typedef _COM_interface IDirect3DCubeTexture9 IDirect3DCubeTexture9;
typedef interface IDirect3DTexture9 IDirect3DTexture9; typedef _COM_interface IDirect3DTexture9 IDirect3DTexture9;
typedef interface IDirect3DVolumeTexture9 IDirect3DVolumeTexture9; typedef _COM_interface IDirect3DVolumeTexture9 IDirect3DVolumeTexture9;
typedef interface IDirect3DVertexDeclaration9 IDirect3DVertexDeclaration9; typedef _COM_interface IDirect3DVertexDeclaration9 IDirect3DVertexDeclaration9;
typedef interface IDirect3DVertexShader9 IDirect3DVertexShader9; typedef _COM_interface IDirect3DVertexShader9 IDirect3DVertexShader9;
typedef interface IDirect3DPixelShader9 IDirect3DPixelShader9; typedef _COM_interface IDirect3DPixelShader9 IDirect3DPixelShader9;
typedef interface IDirect3DStateBlock9 IDirect3DStateBlock9; typedef _COM_interface IDirect3DStateBlock9 IDirect3DStateBlock9;
typedef interface IDirect3DQuery9 IDirect3DQuery9; typedef _COM_interface IDirect3DQuery9 IDirect3DQuery9;
#undef INTERFACE #undef INTERFACE
#define INTERFACE IDirect3D9 #define INTERFACE IDirect3D9

View File

@ -70,8 +70,8 @@ typedef struct _tagOLECMD {
DWORD cmdf; DWORD cmdf;
} OLECMD; } OLECMD;
typedef interface IOleInPlaceSite *LPOLEINPLACESITE; typedef _COM_interface IOleInPlaceSite *LPOLEINPLACESITE;
typedef interface IEnumOleDocumentViews *LPENUMOLEDOCUMENTVIEWS; typedef _COM_interface IEnumOleDocumentViews *LPENUMOLEDOCUMENTVIEWS;
EXTERN_C const IID IID_IContinueCallback; EXTERN_C const IID IID_IContinueCallback;
EXTERN_C const IID IID_IEnumOleDocumentViews; EXTERN_C const IID IID_IEnumOleDocumentViews;

View File

@ -8,24 +8,24 @@
extern "C" { extern "C" {
#endif #endif
typedef interface IHTMLElementCollection *LPHTMLELEMENTCOLLECTION; typedef _COM_interface IHTMLElementCollection *LPHTMLELEMENTCOLLECTION;
typedef interface IHTMLElement *LPHTMLELEMENT; typedef _COM_interface IHTMLElement *LPHTMLELEMENT;
typedef interface IHTMLSelectionObject *LPHTMLSELECTIONOBJECT; typedef _COM_interface IHTMLSelectionObject *LPHTMLSELECTIONOBJECT;
typedef interface IHTMLFramesCollection *LPHTMLFRAMESCOLLECTION; typedef _COM_interface IHTMLFramesCollection *LPHTMLFRAMESCOLLECTION;
typedef interface IHTMLLocation *LPHTMLLOCATION; typedef _COM_interface IHTMLLocation *LPHTMLLOCATION;
typedef interface IHTMLWindow2 *LPHTMLWINDOW2; typedef _COM_interface IHTMLWindow2 *LPHTMLWINDOW2;
typedef interface IHTMLStyleSheetsCollection *LPHTMLSTYLESHEETSCOLLECTION; typedef _COM_interface IHTMLStyleSheetsCollection *LPHTMLSTYLESHEETSCOLLECTION;
typedef interface IHTMLStyleSheet *LPHTMLSTYLESHEET; typedef _COM_interface IHTMLStyleSheet *LPHTMLSTYLESHEET;
typedef interface IHTMLStyle *LPHTMLSTYLE; typedef _COM_interface IHTMLStyle *LPHTMLSTYLE;
typedef interface IHTMLFiltersCollection *LPHTMLFILTERSCOLLECTION; typedef _COM_interface IHTMLFiltersCollection *LPHTMLFILTERSCOLLECTION;
typedef interface IHTMLLinkElement *LPHTMLLINKELEMENT; typedef _COM_interface IHTMLLinkElement *LPHTMLLINKELEMENT;
typedef interface IHTMLImgElement *LPHTMLIMGELEMENT; typedef _COM_interface IHTMLImgElement *LPHTMLIMGELEMENT;
typedef interface IHTMLImageElementFactory *LPHTMLIMAGEELEMENTFACTORY; typedef _COM_interface IHTMLImageElementFactory *LPHTMLIMAGEELEMENTFACTORY;
typedef interface IHTMLEventObj *LPHTMLEVENTOBJ; typedef _COM_interface IHTMLEventObj *LPHTMLEVENTOBJ;
typedef interface IHTMLScreen *LPHTMLSCREEN; typedef _COM_interface IHTMLScreen *LPHTMLSCREEN;
typedef interface IHTMLOptionElementFactory *LPHTMLOPTIONELEMENTFACTORY; typedef _COM_interface IHTMLOptionElementFactory *LPHTMLOPTIONELEMENTFACTORY;
typedef interface IOmHistory *LPOMHISTORY; typedef _COM_interface IOmHistory *LPOMHISTORY;
typedef interface IOmNavigator *LPOMNAVIGATOR; typedef _COM_interface IOmNavigator *LPOMNAVIGATOR;
EXTERN_C const IID IID_IHTMLLinkElement; EXTERN_C const IID IID_IHTMLLinkElement;
#define INTERFACE IHTMLLinkElement #define INTERFACE IHTMLLinkElement

View File

@ -58,21 +58,21 @@ extern "C" {
#define IMPLTYPEFLAG_FRESTRICTED 4 #define IMPLTYPEFLAG_FRESTRICTED 4
#define IMPLTYPEFLAG_FDEFAULTVTABLE 8 #define IMPLTYPEFLAG_FDEFAULTVTABLE 8
typedef interface ITypeLib *LPTYPELIB; typedef _COM_interface ITypeLib *LPTYPELIB;
typedef interface ITypeLib2 *LPTYPELIB2; typedef _COM_interface ITypeLib2 *LPTYPELIB2;
typedef interface ICreateTypeInfo *LPCREATETYPEINFO; typedef _COM_interface ICreateTypeInfo *LPCREATETYPEINFO;
typedef interface ICreateTypeInfo2 *LPCREATETYPEINFO2; typedef _COM_interface ICreateTypeInfo2 *LPCREATETYPEINFO2;
typedef interface ICreateTypeLib *LPCREATETYPELIB; typedef _COM_interface ICreateTypeLib *LPCREATETYPELIB;
typedef interface ICreateTypeLib2 *LPCREATETYPELIB2; typedef _COM_interface ICreateTypeLib2 *LPCREATETYPELIB2;
typedef interface ITypeComp *LPTYPECOMP; typedef _COM_interface ITypeComp *LPTYPECOMP;
typedef interface ITypeInfo *LPTYPEINFO; typedef _COM_interface ITypeInfo *LPTYPEINFO;
typedef interface ITypeInfo2 *LPTYPEINFO2; typedef _COM_interface ITypeInfo2 *LPTYPEINFO2;
typedef interface IErrorInfo *LPERRORINFO; typedef _COM_interface IErrorInfo *LPERRORINFO;
typedef interface IDispatch *LPDISPATCH; typedef _COM_interface IDispatch *LPDISPATCH;
typedef interface IEnumVARIANT *LPENUMVARIANT; typedef _COM_interface IEnumVARIANT *LPENUMVARIANT;
typedef interface ICreateErrorInfo *LPCREATEERRORINFO; typedef _COM_interface ICreateErrorInfo *LPCREATEERRORINFO;
typedef interface ISupportErrorInfo *LPSUPPORTERRORINFO; typedef _COM_interface ISupportErrorInfo *LPSUPPORTERRORINFO;
typedef interface IRecordInfo *LPRECORDINFO; typedef _COM_interface IRecordInfo *LPRECORDINFO;
extern const IID IID_ITypeLib; extern const IID IID_ITypeLib;
extern const IID IID_ITypeLib2; extern const IID IID_ITypeLib2;

View File

@ -9,48 +9,48 @@
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
typedef interface IMoniker *LPMONIKER; typedef _COM_interface IMoniker *LPMONIKER;
typedef interface IStream *LPSTREAM; typedef _COM_interface IStream *LPSTREAM;
typedef interface IMarshal *LPMARSHAL; typedef _COM_interface IMarshal *LPMARSHAL;
typedef interface IMalloc *LPMALLOC; typedef _COM_interface IMalloc *LPMALLOC;
typedef interface IMallocSpy *LPMALLOCSPY; typedef _COM_interface IMallocSpy *LPMALLOCSPY;
typedef interface IMessageFilter *LPMESSAGEFILTER; typedef _COM_interface IMessageFilter *LPMESSAGEFILTER;
typedef interface IPersist *LPPERSIST; typedef _COM_interface IPersist *LPPERSIST;
typedef interface IPersistStream *LPPERSISTSTREAM; typedef _COM_interface IPersistStream *LPPERSISTSTREAM;
typedef interface IRunningObjectTable *LPRUNNINGOBJECTTABLE; typedef _COM_interface IRunningObjectTable *LPRUNNINGOBJECTTABLE;
typedef interface IBindCtx *LPBINDCTX,*LPBC; typedef _COM_interface IBindCtx *LPBINDCTX,*LPBC;
typedef interface IAdviseSink *LPADVISESINK; typedef _COM_interface IAdviseSink *LPADVISESINK;
typedef interface IAdviseSink2 *LPADVISESINK2; typedef _COM_interface IAdviseSink2 *LPADVISESINK2;
typedef interface IDataObject *LPDATAOBJECT; typedef _COM_interface IDataObject *LPDATAOBJECT;
typedef interface IDataAdviseHolder *LPDATAADVISEHOLDER; typedef _COM_interface IDataAdviseHolder *LPDATAADVISEHOLDER;
typedef interface IEnumMoniker *LPENUMMONIKER; typedef _COM_interface IEnumMoniker *LPENUMMONIKER;
typedef interface IEnumFORMATETC *LPENUMFORMATETC; typedef _COM_interface IEnumFORMATETC *LPENUMFORMATETC;
typedef interface IEnumSTATDATA *LPENUMSTATDATA; typedef _COM_interface IEnumSTATDATA *LPENUMSTATDATA;
typedef interface IEnumSTATSTG *LPENUMSTATSTG; typedef _COM_interface IEnumSTATSTG *LPENUMSTATSTG;
typedef interface IEnumSTATPROPSTG LPENUMSTATPROPSTG; typedef _COM_interface IEnumSTATPROPSTG LPENUMSTATPROPSTG;
typedef interface IEnumString *LPENUMSTRING; typedef _COM_interface IEnumString *LPENUMSTRING;
typedef interface IEnumUnknown *LPENUMUNKNOWN; typedef _COM_interface IEnumUnknown *LPENUMUNKNOWN;
typedef interface IStorage *LPSTORAGE; typedef _COM_interface IStorage *LPSTORAGE;
typedef interface IPersistStorage *LPPERSISTSTORAGE; typedef _COM_interface IPersistStorage *LPPERSISTSTORAGE;
typedef interface ILockBytes *LPLOCKBYTES; typedef _COM_interface ILockBytes *LPLOCKBYTES;
typedef interface IStdMarshalInfo *LPSTDMARSHALINFO; typedef _COM_interface IStdMarshalInfo *LPSTDMARSHALINFO;
typedef interface IExternalConnection *LPEXTERNALCONNECTION; typedef _COM_interface IExternalConnection *LPEXTERNALCONNECTION;
typedef interface IRunnableObject *LPRUNNABLEOBJECT; typedef _COM_interface IRunnableObject *LPRUNNABLEOBJECT;
typedef interface IROTData *LPROTDATA; typedef _COM_interface IROTData *LPROTDATA;
typedef interface IPersistFile *LPPERSISTFILE; typedef _COM_interface IPersistFile *LPPERSISTFILE;
typedef interface IRootStorage *LPROOTSTORAGE; typedef _COM_interface IRootStorage *LPROOTSTORAGE;
typedef interface IRpcChannelBuffer *LPRPCCHANNELBUFFER; typedef _COM_interface IRpcChannelBuffer *LPRPCCHANNELBUFFER;
typedef interface IRpcProxyBuffer *LPRPCPROXYBUFFER; typedef _COM_interface IRpcProxyBuffer *LPRPCPROXYBUFFER;
typedef interface IRpcStubBuffer *LPRPCSTUBBUFFER; typedef _COM_interface IRpcStubBuffer *LPRPCSTUBBUFFER;
typedef interface IPropertyStorage *LPPROPERTYSTORAGE; typedef _COM_interface IPropertyStorage *LPPROPERTYSTORAGE;
typedef interface IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG; typedef _COM_interface IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG;
typedef interface IPropertySetStorage *LPPROPERTYSETSTORAGE; typedef _COM_interface IPropertySetStorage *LPPROPERTYSETSTORAGE;
typedef interface IClientSecurity *LPCLIENTSECURITY; typedef _COM_interface IClientSecurity *LPCLIENTSECURITY;
typedef interface IServerSecurity *LPSERVERSECURITY; typedef _COM_interface IServerSecurity *LPSERVERSECURITY;
typedef interface IClassActivator *LPCLASSACTIVATOR; typedef _COM_interface IClassActivator *LPCLASSACTIVATOR;
typedef interface IFillLockBytes *LPFILLLOCKBYTES; typedef _COM_interface IFillLockBytes *LPFILLLOCKBYTES;
typedef interface IProgressNotify *LPPROGRESSNOTIFY; typedef _COM_interface IProgressNotify *LPPROGRESSNOTIFY;
typedef interface ILayoutStorage *LPLAYOUTSTORAGE; typedef _COM_interface ILayoutStorage *LPLAYOUTSTORAGE;
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif

View File

@ -458,7 +458,7 @@ DECLARE_ENUMERATOR(STATPROPSETSTG);
DECLARE_ENUMERATOR(STATPROPSTG); DECLARE_ENUMERATOR(STATPROPSTG);
DECLARE_ENUMERATOR(STATSTG); DECLARE_ENUMERATOR(STATSTG);
DECLARE_ENUMERATOR_(IEnumString,LPOLESTR); DECLARE_ENUMERATOR_(IEnumString,LPOLESTR);
DECLARE_ENUMERATOR_(IEnumMoniker,interface IMoniker*); DECLARE_ENUMERATOR_(IEnumMoniker,_COM_interface IMoniker*);
DECLARE_ENUMERATOR_(IEnumUnknown,IUnknown*); DECLARE_ENUMERATOR_(IEnumUnknown,IUnknown*);
EXTERN_C const IID IID_ISequentialStream; EXTERN_C const IID IID_ISequentialStream;
@ -854,7 +854,7 @@ DECLARE_INTERFACE_(IPSFactoryBuffer,IUnknown)
STDMETHOD(CreateStub)(THIS_ REFIID,LPUNKNOWN,LPRPCSTUBBUFFER*) PURE; STDMETHOD(CreateStub)(THIS_ REFIID,LPUNKNOWN,LPRPCSTUBBUFFER*) PURE;
}; };
#undef INTERFACE #undef INTERFACE
typedef interface IPSFactoryBuffer *LPPSFACTORYBUFFER; typedef _COM_interface IPSFactoryBuffer *LPPSFACTORYBUFFER;
EXTERN_C const IID IID_ILockBytes; EXTERN_C const IID IID_ILockBytes;
#define INTERFACE ILockBytes #define INTERFACE ILockBytes

View File

@ -10,16 +10,16 @@ extern "C" {
#include <ole2.h> #include <ole2.h>
typedef interface IErrorLog *LPERRORLOG; typedef _COM_interface IErrorLog *LPERRORLOG;
typedef interface IPropertyBag *LPPROPERTYBAG; typedef _COM_interface IPropertyBag *LPPROPERTYBAG;
typedef interface IPropertyBag2 *LPPROPERTYBAG2; typedef _COM_interface IPropertyBag2 *LPPROPERTYBAG2;
typedef interface IEnumConnections *LPENUMCONNECTIONS; typedef _COM_interface IEnumConnections *LPENUMCONNECTIONS;
typedef interface IConnectionPoint *LPCONNECTIONPOINT; typedef _COM_interface IConnectionPoint *LPCONNECTIONPOINT;
typedef interface IEnumConnectionPoints *LPENUMCONNECTIONPOINTS; typedef _COM_interface IEnumConnectionPoints *LPENUMCONNECTIONPOINTS;
typedef interface IPropertyPageSite *LPPROPERTYPAGESITE; typedef _COM_interface IPropertyPageSite *LPPROPERTYPAGESITE;
typedef interface IFont *LPFONT; typedef _COM_interface IFont *LPFONT;
typedef interface IFontDisp *LPFONTDISP; typedef _COM_interface IFontDisp *LPFONTDISP;
typedef interface IOleUndoManager *LPOLEUNDOMANAGER; typedef _COM_interface IOleUndoManager *LPOLEUNDOMANAGER;
#ifndef OLE2ANSI #ifndef OLE2ANSI
typedef TEXTMETRICW TEXTMETRICOLE; typedef TEXTMETRICW TEXTMETRICOLE;
@ -73,21 +73,21 @@ typedef enum tagQACONTAINERFLAGS
typedef struct tagQACONTAINER typedef struct tagQACONTAINER
{ {
ULONG cbSize; ULONG cbSize;
interface IOleClientSite *pClientSite; _COM_interface IOleClientSite *pClientSite;
interface IAdviseSinkEx *pAdviseSink; _COM_interface IAdviseSinkEx *pAdviseSink;
interface IPropertyNotifySink *pPropertyNotifySink; _COM_interface IPropertyNotifySink *pPropertyNotifySink;
IUnknown *pUnkEventSink; IUnknown *pUnkEventSink;
DWORD dwAmbientFlags; DWORD dwAmbientFlags;
OLE_COLOR colorFore; OLE_COLOR colorFore;
OLE_COLOR colorBack; OLE_COLOR colorBack;
interface IFont *pFont; _COM_interface IFont *pFont;
interface IOleUndoManager *pUndoMgr; _COM_interface IOleUndoManager *pUndoMgr;
DWORD dwAppearance; DWORD dwAppearance;
LONG lcid; LONG lcid;
HPALETTE hpal; HPALETTE hpal;
interface IBindHost *pBindHost; _COM_interface IBindHost *pBindHost;
interface IOleControlSite *pOleControlSite; _COM_interface IOleControlSite *pOleControlSite;
interface IServiceProvider *pServiceProvider; _COM_interface IServiceProvider *pServiceProvider;
} QACONTAINER; } QACONTAINER;
typedef struct tagQACONTROL typedef struct tagQACONTROL
{ {

View File

@ -225,24 +225,24 @@ extern "C" {
#define DISPID_PICT_HEIGHT 5 #define DISPID_PICT_HEIGHT 5
#define DISPID_PICT_RENDER 6 #define DISPID_PICT_RENDER 6
typedef interface IOleControl *LPOLECONTROL; typedef _COM_interface IOleControl *LPOLECONTROL;
typedef interface IOleControlSite *LPOLECONTROLSITE; typedef _COM_interface IOleControlSite *LPOLECONTROLSITE;
typedef interface ISimpleFrameSite *LPSIMPLEFRAMESITE; typedef _COM_interface ISimpleFrameSite *LPSIMPLEFRAMESITE;
typedef interface IPersistPropertyBag *LPPERSISTPROPERTYBAG; typedef _COM_interface IPersistPropertyBag *LPPERSISTPROPERTYBAG;
typedef interface IPersistStreamInit *LPPERSISTSTREAMINIT; typedef _COM_interface IPersistStreamInit *LPPERSISTSTREAMINIT;
typedef interface IPersistMemory *LPPERSISTMEMORY; typedef _COM_interface IPersistMemory *LPPERSISTMEMORY;
typedef interface IPropertyNotifySink* LPPROPERTYNOTIFYSINK; typedef _COM_interface IPropertyNotifySink* LPPROPERTYNOTIFYSINK;
typedef interface IProvideClassInfo *LPPROVIDECLASSINFO; typedef _COM_interface IProvideClassInfo *LPPROVIDECLASSINFO;
typedef interface IProvideClassInfo2 *LPPROVIDECLASSINFO2; typedef _COM_interface IProvideClassInfo2 *LPPROVIDECLASSINFO2;
typedef interface IConnectionPointContainer *LPCONNECTIONPOINTCONTAINER; typedef _COM_interface IConnectionPointContainer *LPCONNECTIONPOINTCONTAINER;
typedef interface IClassFactory2 *LPCLASSFACTORY2; typedef _COM_interface IClassFactory2 *LPCLASSFACTORY2;
typedef interface ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES; typedef _COM_interface ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES;
typedef interface IPerPropertyBrowsing *LPPERPROPERTYBROWSING; typedef _COM_interface IPerPropertyBrowsing *LPPERPROPERTYBROWSING;
typedef interface IPropertyPage *LPPROPERTYPAGE; typedef _COM_interface IPropertyPage *LPPROPERTYPAGE;
typedef interface IPropertyPage2 *LPPROPERTYPAGE2; typedef _COM_interface IPropertyPage2 *LPPROPERTYPAGE2;
typedef interface IPicture *LPPICTURE; typedef _COM_interface IPicture *LPPICTURE;
typedef interface IPictureDisp *LPPICTUREDISP; typedef _COM_interface IPictureDisp *LPPICTUREDISP;
typedef long OLE_XPOS_PIXELS; typedef long OLE_XPOS_PIXELS;
typedef long OLE_YPOS_PIXELS; typedef long OLE_YPOS_PIXELS;
typedef long OLE_XSIZE_PIXELS; typedef long OLE_XSIZE_PIXELS;

View File

@ -12,24 +12,24 @@ extern "C" {
#define MK_ALT 32 #define MK_ALT 32
typedef interface IParseDisplayName *LPPARSEDISPLAYNAME; typedef _COM_interface IParseDisplayName *LPPARSEDISPLAYNAME;
typedef interface IOleContainer *LPOLECONTAINER; typedef _COM_interface IOleContainer *LPOLECONTAINER;
typedef interface IOleClientSite *LPOLECLIENTSITE; typedef _COM_interface IOleClientSite *LPOLECLIENTSITE;
typedef interface IOleObject *LPOLEOBJECT; typedef _COM_interface IOleObject *LPOLEOBJECT;
typedef interface IDropTarget *LPDROPTARGET; typedef _COM_interface IDropTarget *LPDROPTARGET;
typedef interface IDropSource *LPDROPSOURCE; typedef _COM_interface IDropSource *LPDROPSOURCE;
typedef interface IEnumOleUndoUnits *LPENUMOLEUNDOUNITS; typedef _COM_interface IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
typedef interface IEnumOLEVERB *LPENUMOLEVERB; typedef _COM_interface IEnumOLEVERB *LPENUMOLEVERB;
typedef interface IOleWindow *LPOLEWINDOW; typedef _COM_interface IOleWindow *LPOLEWINDOW;
typedef interface IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW; typedef _COM_interface IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
typedef interface IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT; typedef _COM_interface IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
typedef interface IOleInPlaceFrame *LPOLEINPLACEFRAME; typedef _COM_interface IOleInPlaceFrame *LPOLEINPLACEFRAME;
typedef interface IOleAdviseHolder *LPOLEADVISEHOLDER; typedef _COM_interface IOleAdviseHolder *LPOLEADVISEHOLDER;
typedef interface IViewObject *LPVIEWOBJECT; typedef _COM_interface IViewObject *LPVIEWOBJECT;
typedef interface IViewObject2 *LPVIEWOBJECT2; typedef _COM_interface IViewObject2 *LPVIEWOBJECT2;
typedef interface IOleCache *LPOLECACHE; typedef _COM_interface IOleCache *LPOLECACHE;
typedef interface IOleCache2 *LPOLECACHE2; typedef _COM_interface IOleCache2 *LPOLECACHE2;
typedef interface IOleCacheControl *LPOLECACHECONTROL; typedef _COM_interface IOleCacheControl *LPOLECACHECONTROL;
typedef enum tagBINDSPEED typedef enum tagBINDSPEED
{ {

View File

@ -1102,8 +1102,8 @@ typedef IPersistFolder3 *LPPERSISTFOLDER3;
#endif /* _WIN32_IE >= 0x0500 */ #endif /* _WIN32_IE >= 0x0500 */
typedef interface IShellBrowser *LPSHELLBROWSER; typedef _COM_interface IShellBrowser *LPSHELLBROWSER;
typedef interface IShellView *LPSHELLVIEW; typedef _COM_interface IShellView *LPSHELLVIEW;
#define INTERFACE IShellBrowser #define INTERFACE IShellBrowser
DECLARE_INTERFACE_(IShellBrowser,IOleWindow) DECLARE_INTERFACE_(IShellBrowser,IOleWindow)

View File

@ -8,7 +8,7 @@
extern "C" { extern "C" {
#endif #endif
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
#include <objbase.h> #include <objbase.h>
#include <shlobj.h> #include <shlobj.h>
#endif #endif
@ -166,7 +166,7 @@ WINSHLWAPI LPSTR WINAPI StrRChrA(LPCSTR,LPCSTR,WORD);
WINSHLWAPI LPWSTR WINAPI StrRChrW(LPCWSTR,LPCWSTR,WCHAR); WINSHLWAPI LPWSTR WINAPI StrRChrW(LPCWSTR,LPCWSTR,WCHAR);
WINSHLWAPI LPSTR WINAPI StrRChrIA(LPCSTR,LPCSTR,WORD); WINSHLWAPI LPSTR WINAPI StrRChrIA(LPCSTR,LPCSTR,WORD);
WINSHLWAPI LPWSTR WINAPI StrRChrIW(LPCWSTR,LPCWSTR,WCHAR); WINSHLWAPI LPWSTR WINAPI StrRChrIW(LPCWSTR,LPCWSTR,WCHAR);
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
WINSHLWAPI HRESULT WINAPI StrRetToBufA(LPSTRRET,LPCITEMIDLIST,LPSTR,UINT); WINSHLWAPI HRESULT WINAPI StrRetToBufA(LPSTRRET,LPCITEMIDLIST,LPSTR,UINT);
WINSHLWAPI HRESULT WINAPI StrRetToBufW(LPSTRRET,LPCITEMIDLIST,LPWSTR,UINT); WINSHLWAPI HRESULT WINAPI StrRetToBufW(LPSTRRET,LPCITEMIDLIST,LPWSTR,UINT);
WINSHLWAPI HRESULT WINAPI StrRetToStrA(LPSTRRET,LPCITEMIDLIST,LPSTR*); WINSHLWAPI HRESULT WINAPI StrRetToStrA(LPSTRRET,LPCITEMIDLIST,LPSTR*);
@ -297,7 +297,7 @@ WINSHLWAPI BOOL WINAPI PathUnmakeSystemFolderW(LPWSTR);
WINSHLWAPI void WINAPI PathUnquoteSpacesA(LPSTR); WINSHLWAPI void WINAPI PathUnquoteSpacesA(LPSTR);
WINSHLWAPI void WINAPI PathUnquoteSpacesW(LPWSTR); WINSHLWAPI void WINAPI PathUnquoteSpacesW(LPWSTR);
WINSHLWAPI HRESULT WINAPI SHAutoComplete(HWND,DWORD); WINSHLWAPI HRESULT WINAPI SHAutoComplete(HWND,DWORD);
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileA(LPCSTR,DWORD,struct IStream**); WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileA(LPCSTR,DWORD,struct IStream**);
WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileW(LPCWSTR,DWORD,struct IStream**); WINSHLWAPI HRESULT WINAPI SHCreateStreamOnFileW(LPCWSTR,DWORD,struct IStream**);
WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2A(HKEY,LPCSTR,LPCSTR,DWORD); WINSHLWAPI struct IStream* WINAPI SHOpenRegStream2A(HKEY,LPCSTR,LPCSTR,DWORD);
@ -318,7 +318,7 @@ WINSHLWAPI DWORD WINAPI SHQueryInfoKeyA(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
WINSHLWAPI DWORD WINAPI SHQueryInfoKeyW(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD); WINSHLWAPI DWORD WINAPI SHQueryInfoKeyW(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
WINSHLWAPI DWORD WINAPI SHQueryValueExA(HKEY,LPCSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD); WINSHLWAPI DWORD WINAPI SHQueryValueExA(HKEY,LPCSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
WINSHLWAPI DWORD WINAPI SHQueryValueExW(HKEY,LPCWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD); WINSHLWAPI DWORD WINAPI SHQueryValueExW(HKEY,LPCWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD);
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
WINSHLWAPI HRESULT WINAPI SHGetThreadRef(IUnknown**); WINSHLWAPI HRESULT WINAPI SHGetThreadRef(IUnknown**);
WINSHLWAPI HRESULT WINAPI SHSetThreadRef(IUnknown*); WINSHLWAPI HRESULT WINAPI SHSetThreadRef(IUnknown*);
WINSHLWAPI BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*); WINSHLWAPI BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*);
@ -443,7 +443,7 @@ HRESULT WINAPI DllInstall(BOOL,LPCWSTR);
#define StrPBrk StrPBrkW #define StrPBrk StrPBrkW
#define StrRChr StrRChrW #define StrRChr StrRChrW
#define StrRChrI StrRChrIW #define StrRChrI StrRChrIW
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
#define StrRetToBuf StrRetToBufW #define StrRetToBuf StrRetToBufW
#define StrRetToStr StrRetToStrW #define StrRetToStr StrRetToStrW
#endif #endif
@ -509,7 +509,7 @@ HRESULT WINAPI DllInstall(BOOL,LPCWSTR);
#define PathUnExpandEnvStrings PathUnExpandEnvStringsW #define PathUnExpandEnvStrings PathUnExpandEnvStringsW
#define PathUnmakeSystemFolder PathUnmakeSystemFolderW #define PathUnmakeSystemFolder PathUnmakeSystemFolderW
#define PathUnquoteSpaces PathUnquoteSpacesW #define PathUnquoteSpaces PathUnquoteSpacesW
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
#define SHCreateStreamOnFile SHCreateStreamOnFileW #define SHCreateStreamOnFile SHCreateStreamOnFileW
#define SHOpenRegStream SHOpenRegStreamW #define SHOpenRegStream SHOpenRegStreamW
#define SHOpenRegStream2 SHOpenRegStream2W #define SHOpenRegStream2 SHOpenRegStream2W
@ -585,7 +585,7 @@ HRESULT WINAPI DllInstall(BOOL,LPCWSTR);
#define StrPBrk StrPBrkA #define StrPBrk StrPBrkA
#define StrRChr StrRChrA #define StrRChr StrRChrA
#define StrRChrI StrRChrIA #define StrRChrI StrRChrIA
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
#define StrRetToBuf StrRetToBufA #define StrRetToBuf StrRetToBufA
#define StrRetToStr StrRetToStrA #define StrRetToStr StrRetToStrA
#endif #endif
@ -651,7 +651,7 @@ HRESULT WINAPI DllInstall(BOOL,LPCWSTR);
#define PathUnExpandEnvStrings PathUnExpandEnvStringsA #define PathUnExpandEnvStrings PathUnExpandEnvStringsA
#define PathUnmakeSystemFolder PathUnmakeSystemFolderA #define PathUnmakeSystemFolder PathUnmakeSystemFolderA
#define PathUnquoteSpaces PathUnquoteSpacesA #define PathUnquoteSpaces PathUnquoteSpacesA
#ifndef __OBJC__ #ifndef _OBJC_NO_COM
#define SHCreateStreamOnFile SHCreateStreamOnFileA #define SHCreateStreamOnFile SHCreateStreamOnFileA
#define SHOpenRegStream SHOpenRegStreamA #define SHOpenRegStream SHOpenRegStreamA
#define SHOpenRegStream2 SHOpenRegStream2A #define SHOpenRegStream2 SHOpenRegStream2A

View File

@ -10,7 +10,7 @@
#ifndef _MMSYSTEM_H #ifndef _MMSYSTEM_H
#include <mmsystem.h> #include <mmsystem.h>
#endif #endif
#if !defined (_OLE2_H) && !defined (__OBJC__) #if !defined (_OLE2_H) && !defined (_OBJC_NO_COM)
#include <ole2.h> #include <ole2.h>
#endif #endif
@ -633,7 +633,7 @@ typedef struct _AVICOMPRESSOPTIONS {
DWORD dwInterleaveEvery; DWORD dwInterleaveEvery;
} AVICOMPRESSOPTIONS, *LPAVICOMPRESSOPTIONS,*PAVICOMPRESSOPTIONS; } AVICOMPRESSOPTIONS, *LPAVICOMPRESSOPTIONS,*PAVICOMPRESSOPTIONS;
#if !defined (__OBJC__) #if !defined (_OBJC_NO_COM)
#define DEFINE_AVIGUID(name,l,w1,w2) DEFINE_GUID(name,l,w1,w2,0xC0,0,0,0,0,0,0,0x46) #define DEFINE_AVIGUID(name,l,w1,w2) DEFINE_GUID(name,l,w1,w2,0xC0,0,0,0,0,0,0,0x46)
DEFINE_AVIGUID(IID_IAVIFile,0x00020020,0,0); DEFINE_AVIGUID(IID_IAVIFile,0x00020020,0,0);
DEFINE_AVIGUID(IID_IAVIStream,0x00020021,0,0); DEFINE_AVIGUID(IID_IAVIStream,0x00020021,0,0);
@ -720,7 +720,7 @@ DECLARE_INTERFACE_(IGetFrame, IUnknown)
}; };
#undef INTERFACE #undef INTERFACE
typedef IGetFrame *PGETFRAME; typedef IGetFrame *PGETFRAME;
#endif /* !defined (__OBJC__) */ #endif /* !defined (_OBJC_NO_COM) */
DWORD VFWAPI VideoForWindowsVersion(VOID); DWORD VFWAPI VideoForWindowsVersion(VOID);
LONG VFWAPI InitVFW(VOID); LONG VFWAPI InitVFW(VOID);
@ -746,7 +746,7 @@ BOOL VFWAPI ICSeqCompressFrameStart(PCOMPVARS,LPBITMAPINFO);
void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS); void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS);
LPVOID VFWAPI ICSeqCompressFrame(PCOMPVARS,UINT,LPVOID,BOOL*,LONG*); LPVOID VFWAPI ICSeqCompressFrame(PCOMPVARS,UINT,LPVOID,BOOL*,LONG*);
void VFWAPI ICCompressorFree(PCOMPVARS); void VFWAPI ICCompressorFree(PCOMPVARS);
#if !defined (__OBJC__) #if !defined (_OBJC_NO_COM)
ULONG WINAPI AVIStreamAddRef(PAVISTREAM); ULONG WINAPI AVIStreamAddRef(PAVISTREAM);
ULONG WINAPI AVIStreamRelease(PAVISTREAM); ULONG WINAPI AVIStreamRelease(PAVISTREAM);
HRESULT WINAPI AVIStreamCreate(PAVISTREAM*,LONG,LONG,CLSID*); HRESULT WINAPI AVIStreamCreate(PAVISTREAM*,LONG,LONG,CLSID*);
@ -811,7 +811,7 @@ HRESULT WINAPI AVIFileEndRecord(PAVIFILE);
HRESULT WINAPI AVIClearClipboard(VOID); HRESULT WINAPI AVIClearClipboard(VOID);
HRESULT WINAPI AVIGetFromClipboard(PAVIFILE*); HRESULT WINAPI AVIGetFromClipboard(PAVIFILE*);
HRESULT WINAPI AVIPutFileOnClipboard(PAVIFILE); HRESULT WINAPI AVIPutFileOnClipboard(PAVIFILE);
#endif /* __OBJC__ */ #endif /* _OBJC_NO_COM */
#ifdef OFN_READONLY #ifdef OFN_READONLY
BOOL WINAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA); BOOL WINAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA);
BOOL WINAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW); BOOL WINAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW);

View File

@ -106,11 +106,14 @@
#endif /* (_WIN32_WINNT >= 0x0400) */ #endif /* (_WIN32_WINNT >= 0x0400) */
#endif #endif
#ifndef NOGDI #ifndef NOGDI
#if !defined (__OBJC__) /* In older versions we disallowed COM declarations in __OBJC__
because of conflicts with @interface directive. Define _OBJC_NO_COM
to keep this behaviour. */
#if !defined (_OBJC_NO_COM)
#if (__GNUC__ >= 3) || defined (__WATCOMC__) #if (__GNUC__ >= 3) || defined (__WATCOMC__)
#include <ole2.h> #include <ole2.h>
#endif #endif
#endif /* __OBJC__ */ #endif /* _OBJC_NO_COM */
#endif #endif
#endif /* WIN32_LEAN_AND_MEAN */ #endif /* WIN32_LEAN_AND_MEAN */

View File

@ -1,7 +1,7 @@
/* /*
* ws2spi.h * ws2spi.h
* *
* Winsock 2 Service Provider interface. * Winsock 2 Service Provider Interface.
* *
* *
* THIS SOFTWARE IS NOT COPYRIGHTED * THIS SOFTWARE IS NOT COPYRIGHTED

View File

@ -31,7 +31,6 @@
#include <httpext.h> #include <httpext.h>
#include <icm.h> #include <icm.h>
#include <imagehlp.h> #include <imagehlp.h>
#include <initguid.h>
#include <ipexport.h> #include <ipexport.h>
#include <iphlpapi.h> #include <iphlpapi.h>
#include <ipifcons.h> #include <ipifcons.h>
@ -86,7 +85,8 @@
#include <windns.h> #include <windns.h>
#include <usp10.h> #include <usp10.h>
#ifndef __OBJC__ /* problems with BOOL */ #ifndef _OBJC_NO_COM
#include <initguid.h>
#include <ole2.h> #include <ole2.h>
#include <comcat.h> #include <comcat.h>
#include <shlobj.h> #include <shlobj.h>
@ -107,11 +107,19 @@
#include <servprov.h> #include <servprov.h>
#include <aclui.h> #include <aclui.h>
#include <mlang.h> #include <mlang.h>
#else
#undef BOOL
#endif #endif
#include <stdio.h> #ifdef __OBJC__
#undef BOOL
@interface class1 {
int e;
}
@end
@implementation class1
@end
#endif
int main() int main()
{ {