home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1997 October
/
Chip_1997-10_cd.bin
/
tema
/
sybase
/
powerj
/
hpp.z
/
wstdole.hpp
< prev
next >
Wrap
C/C++ Source or Header
|
1996-12-11
|
7KB
|
188 lines
#ifndef _stdole_HPP_INCLUDED
#define _stdole_HPP_INCLUDED
#ifndef GUID_DEFINED
#define GUID_DEFINED
typedef struct _GUID {
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[8];
} GUID;
#endif // !GUID_DEFINED
#if !defined( __IID_DEFINED__ )
#define __IID_DEFINED__
typedef GUID IID;
typedef GUID CLSID;
extern "C" const GUID GUID_NULL;
#define IID_NULL GUID_NULL
#define CLSID_NULL GUID_NULL
#endif // !__IID_DEFINED__
#ifndef _OLEAUTO_H_
#define _OLEAUTO_H_
typedef struct DISPPARAMS {
WVARIANT * rgvarg;
long * rgdispidNamedArgs;
unsigned int cArgs;
unsigned int cNamedArgs;
} DISPPARAMS;
#ifndef _tagEXCEPINFO_DEFINED
#define _tagEXCEPINFO_DEFINED
#define _EXCEPINFO_DEFINED
#define _LPEXCEPINFO_DEFINED
/* size is 32 */
typedef struct EXCEPINFO {
unsigned short wCode;
unsigned short wReserved;
WBStr bstrSource;
WBStr bstrDescription;
WBStr bstrHelpFile;
unsigned long dwHelpContext;
void * pvReserved;
void * pfnDeferredFillIn;
WScode scode;
} EXCEPINFO;
#endif
#endif
class IUnknown;
class IDispatch;
class ITypeInfo;
class IEnumVARIANT;
#ifndef __oaidl_h__
struct VARIANT;
#endif
#ifndef __IUnknown_INTERFACE_DEFINED__
#define __IUnknown_INTERFACE_DEFINED__
typedef IUnknown * LPUNKNOWN;
extern "C" const IID __cdecl IID_IUnknown;
class __stdcall IUnknown {
public:
/* Methods */
virtual WHRESULT QueryInterface( const IID & __riid, void * * __ppvObj ) = 0;
virtual unsigned long AddRef( void ) = 0;
virtual unsigned long Release( void ) = 0;
};
#endif
#ifndef __IDispatch_INTERFACE_DEFINED__
#define __IDispatch_INTERFACE_DEFINED__
typedef IDispatch * LPDISPATCH;
extern "C" const IID __cdecl IID_IDispatch;
class __stdcall IDispatch : public IUnknown {
public:
/* Methods */
virtual WHRESULT GetTypeInfoCount( unsigned int * __pctinfo ) = 0;
virtual WHRESULT GetTypeInfo( unsigned int __itinfo, unsigned long __lcid, ITypeInfo ** __pptinfo ) = 0;
virtual WHRESULT GetIDsOfNames( const IID & __riid, long char ** __rgszNames, unsigned int __cNames, unsigned long __lcid, long * __rgdispid ) = 0;
virtual WHRESULT Invoke( long __dispidMember, const IID & __riid, unsigned long __lcid, unsigned short __wFlags, DISPPARAMS * __pdispparams, VARIANT * __pvarResult, EXCEPINFO * __pexcepinfo, unsigned int * __puArgErr ) = 0;
};
#endif
#ifndef __IEnumVARIANT_INTERFACE_DEFINED__
#define __IEnumVARIANT_INTERFACE_DEFINED__
typedef IEnumVARIANT * LPENUMVARIANT;
class __stdcall IEnumVARIANT : public IUnknown {
public:
/* Methods */
virtual WHRESULT Next( unsigned long __celt, VARIANT * __rgvar, unsigned long * __pceltFetched ) = 0;
virtual WHRESULT Skip( unsigned long __celt ) = 0;
virtual WHRESULT Reset( void ) = 0;
virtual WHRESULT Clone( IEnumVARIANT * * __ppenum ) = 0;
};
#endif
#endif // _stdole_HPP_INCLUDED
#ifndef __oaidl_h__
struct TYPEATTR;
struct FUNCDESC;
struct VARDESC;
#endif
#ifndef __ITypeLib_INTERFACE_DEFINED__
class ITypeComp;
class ITypeLib;
struct TLIBATTR;
#endif
#ifndef __ITypeInfo_INTERFACE_DEFINED__
#define __ITypeInfo_INTERFACE_DEFINED__
class __stdcall ITypeInfo : public IUnknown {
public:
virtual WHRESULT GetTypeAttr( TYPEATTR **pptypeattr ) = 0;
virtual WHRESULT GetTypeComp( ITypeComp **pptcomp ) = 0;
virtual WHRESULT GetFuncDesc( unsigned int index, FUNCDESC **pppfuncdesc ) = 0;
virtual WHRESULT GetVarDesc( unsigned int index, VARDESC **ppvardesc ) = 0;
virtual WHRESULT GetNames( long memid, WBStr *rgWBStrNames, unsigned int cMaxNames, unsigned int *pcNames) = 0;
virtual WHRESULT GetRefTypeOfImplType( unsigned int index, unsigned long *hpreftype) = 0;
virtual WHRESULT GetImplTypeFlags( unsigned int index, int *pimpltypeflags) = 0;
virtual WHRESULT GetIDsOfNames( long char **rglpszNames, unsigned int cNames, long *rgmemid) = 0;
virtual WHRESULT Invoke( void *pvInstance, long memid, unsigned short wFlags, DISPPARAMS *pdispparams, VARIANT *pvarResult, EXCEPINFO *pexcepinfo, unsigned int *puArgErr) = 0;
virtual WHRESULT GetDocumentation( long memid, WBStr *pWBStrName, WBStr *pWBStrDocString, unsigned long *pdwHelpContext, WBStr *pWBStrHelpFile) = 0;
virtual WHRESULT GetDllEntry( long memid, unsigned short invkind, WBStr *pWBStrDllName, WBStr *pWBStrName, unsigned short *pwOrdinal) = 0;
virtual WHRESULT GetRefTypeInfo( unsigned long hreftype, ITypeInfo * *pptinfo) = 0;
virtual WHRESULT AddressOfMember( long memid, unsigned short invkind, void * *ppv) = 0;
virtual WHRESULT CreateInstance( IUnknown *puncOuter, const IID & riid, void * *ppvObj) = 0;
virtual WHRESULT GetMops( long memid, WBStr *pWBStrMops) = 0;
virtual WHRESULT GetContainingTypeLib( ITypeLib * *pptlib, unsigned int *pindex) = 0;
virtual void ReleaseTypeAttr( TYPEATTR *ptypeattr) = 0;
virtual void ReleaseFuncDesc( FUNCDESC *pfuncdesc) = 0;
virtual void ReleaseVarDesc( VARDESC *pvardesc) = 0;
};
#endif
#ifndef __ITypeLib_INTERFACE_DEFINED__
#define __ITypeLib_INTERFACE_DEFINED__
class __stdcall ITypeLib : public IUnknown {
public:
virtual unsigned int GetTypeInfoCount( void) = 0;
virtual WHRESULT GetTypeInfo( unsigned int index, ITypeInfo * *ppitinfo) = 0;
virtual WHRESULT GetTypeInfoType( unsigned int index, unsigned short *ptkind) = 0;
virtual WHRESULT GetTypeInfoOfGuid( const GUID & guid, ITypeInfo * *pptinfo) = 0;
virtual WHRESULT GetLibAttr( TLIBATTR * *pptlibattr) = 0;
virtual WHRESULT GetTypeComp( ITypeComp * *pptcomp) = 0;
virtual WHRESULT GetDocumentation( int index, WBStr *pbstrName, WBStr *pbstrDocString, unsigned long *pdwHelpContext, WBStr *pbstrHelpFile) = 0;
virtual WHRESULT IsName( long char * szNameBuf, unsigned long lHashVal, BOOL *pfName) = 0;
virtual WHRESULT FindName( long char * szNameBuf, unsigned long lHashVal, ITypeInfo * *rgptinfo, long *rgmemid, unsigned short *pcFound) = 0;
virtual void ReleaseTLibAttr( TLIBATTR *ptlibattr) = 0;
};
#endif