Ignore:
Timestamp:
Dec 24, 2000, 1:28:20 PM (25 years ago)
Author:
sandervl
Message:

update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/win/oleauto.h

    r3850 r4834  
    1 /* $Id: oleauto.h,v 1.3 2000-07-18 18:30:35 sandervl Exp $ */
    2 
    31#ifndef __WINE_OLEAUTO_H
    42#define __WINE_OLEAUTO_H
     3
     4#include "wtypes.h"
     5#include "wine/obj_base.h"
     6#include "wine/obj_oleaut.h"
     7#include "wine/obj_errorinfo.h"
     8
     9#ifndef __WINE__
     10#include "oaidl.h"
     11#endif
     12
     13struct tagSAFEARRAY;
     14struct tagSAFEARRAYBOUND;
     15struct tagVARIANT;
    516
    617#ifdef __cplusplus
     
    819#endif
    920
    10 /*#include <ole.h> */
    11 #include "mapidefs.h"
    12 #include "wine/obj_oleaut.h"
    13 #include "oaidl.h"
    14 
    15 BSTR16 WINAPI SysAllocString16(LPCOLESTR16);
     21
     22/*
     23 * BSTR API
     24 */
     25
    1626BSTR WINAPI SysAllocString(const OLECHAR*);
    17 INT16 WINAPI SysReAllocString16(LPBSTR16,LPCOLESTR16);
    18 INT WINAPI SysReAllocString(LPBSTR,const OLECHAR*);
    19 VOID WINAPI SysFreeString16(BSTR16);
    20 VOID WINAPI SysFreeString(BSTR);
    21 BSTR16 WINAPI SysAllocStringLen16(const char*, int);
    22 BSTR WINAPI SysAllocStringLen(const OLECHAR*, UINT);
    23 int WINAPI SysReAllocStringLen16(BSTR16*, const char*,  int);
    24 int WINAPI SysReAllocStringLen(BSTR*, const OLECHAR*, UINT);
    25 int WINAPI SysStringLen16(BSTR16);
    26 int WINAPI SysStringLen(BSTR);
    27 
    28  /*****************************************************************
    29  *  Time API
    30  */
    31 
    32 INT WINAPI DosDateTimeToVariantTime(USHORT wDosDate, USHORT wDosTime, DOUBLE * pvtime);
    33 
    34 INT WINAPI VariantTimeToDosDateTime(DOUBLE vtime, USHORT * pwDosDate, USHORT * pwDosTime);
    35 
    36 #ifdef _WIN32
    37 INT WINAPI SystemTimeToVariantTime(LPSYSTEMTIME lpSystemTime, DOUBLE *pvtime);
    38 INT WINAPI VariantTimeToSystemTime(DOUBLE vtime, LPSYSTEMTIME lpSystemTime);
    39 #endif
    40 
     27BSTR WINAPI SysAllocStringByteLen(LPCSTR,UINT);
     28BSTR WINAPI SysAllocStringLen(const OLECHAR*,UINT);
     29void WINAPI SysFreeString(BSTR);
     30INT  WINAPI SysReAllocString(LPBSTR,const OLECHAR*);
     31int  WINAPI SysReAllocStringLen(BSTR*,const OLECHAR*,UINT);
     32int  WINAPI SysStringByteLen(BSTR);
     33int  WINAPI SysStringLen(BSTR);
     34
     35
     36/*****************************************************************
     37 *  ErrorInfo API
     38 */
     39
     40HRESULT WINAPI SetErrorInfo(ULONG dwReserved, IErrorInfo *perrinfo);
     41HRESULT WINAPI GetErrorInfo(ULONG dwReserved, IErrorInfo **pperrinfo);
     42HRESULT WINAPI CreateErrorInfo(ICreateErrorInfo **pperrinfo);
    4143
    4244/*****************************************************************
     
    4547
    4648HRESULT WINAPI
    47 SafeArrayAllocDescriptor(UINT cDims, SAFEARRAY **ppsaOut);
    48 
    49 HRESULT WINAPI
    50 SafeArrayAllocData(SAFEARRAY *psa);
    51 
    52 SAFEARRAY* WINAPI
    53 SafeArrayCreate(VARTYPE vt, UINT cDims, SAFEARRAYBOUND *rgsabound);
    54 
    55 HRESULT WINAPI
    56 SafeArrayDestroyDescriptor(SAFEARRAY *psa);
    57 
    58 HRESULT WINAPI
    59 SafeArrayPutElement(SAFEARRAY *psa, LONG *rgIndices, void *pv);
    60 
    61 HRESULT WINAPI
    62 SafeArrayGetElement(SAFEARRAY *psa, LONG *rgIndices, void *pv);
    63 
    64 HRESULT WINAPI
    65 SafeArrayLock(SAFEARRAY *psa);
    66 
    67 HRESULT WINAPI
    68 SafeArrayUnlock(SAFEARRAY *psa);
    69 
    70 HRESULT WINAPI
    71 SafeArrayGetUBound(SAFEARRAY *psa, UINT nDim, LONG *plUbound);
    72 
    73 HRESULT WINAPI
    74 SafeArrayGetLBound(SAFEARRAY *psa, UINT nDim, LONG *plLbound);
     49SafeArrayAllocDescriptor(UINT cDims, struct tagSAFEARRAY **ppsaOut);
     50
     51HRESULT WINAPI
     52SafeArrayAllocData(struct tagSAFEARRAY *psa);
     53
     54struct tagSAFEARRAY * WINAPI
     55SafeArrayCreate(VARTYPE vt, UINT cDims, struct tagSAFEARRAYBOUND *rgsabound);
     56
     57HRESULT WINAPI
     58SafeArrayDestroyDescriptor(struct tagSAFEARRAY *psa);
     59
     60HRESULT WINAPI
     61SafeArrayPutElement(struct tagSAFEARRAY *psa, LONG *rgIndices, void *pv);
     62
     63HRESULT WINAPI
     64SafeArrayGetElement(struct tagSAFEARRAY *psa, LONG *rgIndices, void *pv);
     65
     66HRESULT WINAPI
     67SafeArrayLock(struct tagSAFEARRAY *psa);
     68
     69HRESULT WINAPI
     70SafeArrayUnlock(struct tagSAFEARRAY *psa);
     71
     72HRESULT WINAPI
     73SafeArrayGetUBound(struct tagSAFEARRAY *psa, UINT nDim, LONG *plUbound);
     74
     75HRESULT WINAPI
     76SafeArrayGetLBound(struct tagSAFEARRAY *psa, UINT nDim, LONG *plLbound);
    7577
    7678UINT  WINAPI
    77 SafeArrayGetDim(SAFEARRAY *psa);
     79SafeArrayGetDim(struct tagSAFEARRAY *psa);
    7880
    7981UINT  WINAPI
    80 SafeArrayGetElemsize(SAFEARRAY *psa);
    81 
    82 HRESULT WINAPI
    83 SafeArrayAccessData(SAFEARRAY *psa, void **ppvData);
    84 
    85 HRESULT WINAPI
    86 SafeArrayUnaccessData(SAFEARRAY *psa);
    87 
    88 HRESULT WINAPI
    89 SafeArrayPtrOfIndex(SAFEARRAY *psa, LONG *rgIndices, void **ppvData);
    90 
    91 HRESULT WINAPI
    92 SafeArrayCopyData(SAFEARRAY *psaSource, SAFEARRAY **psaTarget);
    93 
    94 HRESULT WINAPI
    95 SafeArrayDestroyData(SAFEARRAY *psa);
    96 
    97 HRESULT WINAPI
    98 SafeArrayDestroy(SAFEARRAY *psa);
    99 
    100 HRESULT WINAPI
    101 SafeArrayCopy(SAFEARRAY *psa, SAFEARRAY **ppsaOut);
    102 
    103 SAFEARRAY* WINAPI
     82SafeArrayGetElemsize(struct tagSAFEARRAY *psa);
     83
     84HRESULT WINAPI
     85SafeArrayAccessData(struct tagSAFEARRAY *psa, void **ppvData);
     86
     87HRESULT WINAPI
     88SafeArrayUnaccessData(struct tagSAFEARRAY *psa);
     89
     90HRESULT WINAPI
     91SafeArrayPtrOfIndex(struct tagSAFEARRAY *psa, LONG *rgIndices, void **ppvData);
     92
     93HRESULT WINAPI
     94SafeArrayCopyData(struct tagSAFEARRAY *psaSource, struct tagSAFEARRAY **psaTarget);
     95
     96HRESULT WINAPI
     97SafeArrayDestroyData(struct tagSAFEARRAY *psa);
     98
     99HRESULT WINAPI
     100SafeArrayDestroy(struct tagSAFEARRAY *psa);
     101
     102HRESULT WINAPI
     103SafeArrayCopy(struct tagSAFEARRAY *psa, struct tagSAFEARRAY **ppsaOut);
     104
     105struct tagSAFEARRAY *WINAPI
    104106SafeArrayCreateVector(VARTYPE vt, LONG lLbound, ULONG cElements);
    105107
    106108HRESULT WINAPI
    107 SafeArrayRedim(SAFEARRAY *psa, SAFEARRAYBOUND *psaboundNew);
     109SafeArrayRedim(struct tagSAFEARRAY *psa, struct tagSAFEARRAYBOUND *psaboundNew);
    108110
    109111
    110112/* These are macros that help accessing the VARIANT date type.
    111113 */
    112 #if defined(__cplusplus) && !defined(NONAMELESSUNION)
     114#ifdef __cplusplus
    113115#define V_UNION(A, B)   ((A)->B)
    114116#define V_VT(A)                 ((A)->vt)
     
    168170 */
    169171
    170 void WINAPI VariantInit(VARIANTARG* pvarg);
    171 HRESULT WINAPI VariantClear(VARIANTARG* pvarg);
    172 HRESULT WINAPI VariantCopy(VARIANTARG* pvargDest, VARIANTARG* pvargSrc);
    173 HRESULT WINAPI VariantCopyInd(VARIANT* pvargDest, VARIANTARG* pvargSrc);
    174 HRESULT WINAPI VariantChangeType(VARIANTARG* pvargDest, VARIANTARG* pvargSrc,
     172void WINAPI VariantInit(struct tagVARIANT* pvarg);
     173HRESULT WINAPI VariantClear(struct tagVARIANT* pvarg);
     174HRESULT WINAPI VariantCopy(struct tagVARIANT* pvargDest, struct tagVARIANT* pvargSrc);
     175HRESULT WINAPI VariantCopyInd(struct tagVARIANT* pvargDest, struct tagVARIANT* pvargSrc);
     176HRESULT WINAPI VariantChangeType(struct tagVARIANT* pvargDest, struct tagVARIANT* pvargSrc,
    175177                                                  USHORT wFlags, VARTYPE vt);
    176 HRESULT WINAPI VariantChangeTypeEx(VARIANTARG* pvargDest, VARIANTARG* pvargSrc,
     178HRESULT WINAPI VariantChangeTypeEx(struct tagVARIANT* pvargDest, struct tagVARIANT* pvargSrc,
    177179                                                        LCID lcid, USHORT wFlags, VARTYPE vt);
    178180
     
    481483#define VarUintFromInt  VarUI4FromI4
    482484
     485/*
     486 * Variant Math operations
     487 */
     488#define VARCMP_LT   0
     489#define VARCMP_EQ   1
     490#define VARCMP_GT   2
     491#define VARCMP_NULL 3
     492
     493HRESULT WINAPI VarAdd(LPVARIANT,LPVARIANT,LPVARIANT);
     494HRESULT WINAPI VarAnd(LPVARIANT,LPVARIANT,LPVARIANT);
     495HRESULT WINAPI VarCat(LPVARIANT,LPVARIANT,LPVARIANT);
     496HRESULT WINAPI VarDiv(LPVARIANT,LPVARIANT,LPVARIANT);
     497HRESULT WINAPI VarEqv(LPVARIANT,LPVARIANT,LPVARIANT);
     498HRESULT WINAPI VarIdiv(LPVARIANT,LPVARIANT,LPVARIANT);
     499HRESULT WINAPI VarImp(LPVARIANT,LPVARIANT,LPVARIANT);
     500HRESULT WINAPI VarMod(LPVARIANT,LPVARIANT,LPVARIANT);
     501HRESULT WINAPI VarMul(LPVARIANT,LPVARIANT,LPVARIANT);
     502HRESULT WINAPI VarOr(LPVARIANT,LPVARIANT,LPVARIANT);
     503HRESULT WINAPI VarPow(LPVARIANT,LPVARIANT,LPVARIANT);
     504HRESULT WINAPI VarSub(LPVARIANT,LPVARIANT,LPVARIANT);
     505HRESULT WINAPI VarXor(LPVARIANT,LPVARIANT,LPVARIANT);
     506
     507HRESULT WINAPI VarAbs(LPVARIANT,LPVARIANT);
     508HRESULT WINAPI VarFix(LPVARIANT,LPVARIANT);
     509HRESULT WINAPI VarInt(LPVARIANT,LPVARIANT);
     510HRESULT WINAPI VarNeg(LPVARIANT,LPVARIANT);
     511HRESULT WINAPI VarNot(LPVARIANT,LPVARIANT);
     512
     513HRESULT WINAPI VarRound(LPVARIANT,int,LPVARIANT);
     514
     515HRESULT WINAPI VarCmp(LPVARIANT,LPVARIANT,LCID,ULONG);
     516
     517
     518
     519typedef struct tagPARAMDATA {
     520    OLECHAR * szName;   /* parameter name */
     521    VARTYPE vt;         /* parameter type */
     522} PARAMDATA, * LPPARAMDATA;
     523
     524typedef struct tagMETHODDATA {
     525    OLECHAR * szName;   /* method name */
     526    PARAMDATA * ppdata; /* pointer to an array of PARAMDATAs */
     527    DISPID dispid;      /* method ID */
     528    UINT iMeth;         /* method index */
     529    CALLCONV_OLE2 cc;        /* calling convention */
     530    UINT cArgs;         /* count of arguments */
     531    WORD wFlags;        /* same wFlags as on IDispatch::Invoke() */
     532    VARTYPE vtReturn;
     533} METHODDATA, * LPMETHODDATA;
     534
     535typedef struct tagINTERFACEDATA {
     536    METHODDATA * pmethdata;  /* pointer to an array of METHODDATAs */
     537    UINT         cMembers;   /* count of members */
     538} INTERFACEDATA, * LPINTERFACEDATA;
     539
     540typedef enum tagREGKIND
     541{
     542    REGKIND_DEFAULT,
     543    REGKIND_REGISTER,
     544    REGKIND_NONE
     545} REGKIND;
     546
     547
     548INT WINAPI DosDateTimeToVariantTime(USHORT,USHORT,DATE*);
     549
     550ULONG WINAPI LHashValOfNameSysA(SYSKIND syskind,LCID lcid,LPCSTR szName);
     551ULONG WINAPI LHashValOfNameSys (SYSKIND syskind,LCID lcid,LPCOLESTR szName);
     552
     553HRESULT WINAPI DispGetParam(DISPPARAMS* pdispparams, UINT position,
     554            VARTYPE vtTarg, VARIANT* pvarResult, UINT* puArgErr);
     555HRESULT WINAPI DispGetIDsOfNames(ITypeInfo* ptinfo, OLECHAR** rgszNames,
     556            UINT cNames, DISPID* rgdispid);
     557HRESULT WINAPI DispInvoke(void* _this, ITypeInfo* ptinfo, DISPID dispidMember,
     558            WORD wFlags, DISPPARAMS* pparams, VARIANT* pvarResult,
     559            EXCEPINFO* pexcepinfo, UINT* puArgErr);
     560HRESULT WINAPI CreateDispTypeInfo(INTERFACEDATA* pidata, LCID lcid,
     561            ITypeInfo** pptinfo);
     562HRESULT WINAPI CreateStdDispatch(IUnknown* punkOuter, void* pvThis,
     563            ITypeInfo* ptinfo, IUnknown** ppunkStdDisp);
     564HRESULT WINAPI DispCallFunc(void* pvInstance, ULONG oVft, CALLCONV_OLE2 cc,
     565            VARTYPE vtReturn, UINT  cActuals, VARTYPE* prgvt,
     566            VARIANTARG** prgpvarg, VARIANT* pvargResult);
     567
     568
     569/*
     570 * TypeLib API
     571 */
     572
     573HRESULT WINAPI CreateTypeLib(SYSKIND,const OLECHAR*,ICreateTypeLib**);
     574HRESULT WINAPI CreateTypeLib2(SYSKIND,LPCOLESTR,ICreateTypeLib2**);
     575HRESULT WINAPI LoadRegTypeLib(REFGUID,WORD,WORD,LCID,ITypeLib**);
     576HRESULT WINAPI LoadTypeLib(const OLECHAR*,ITypeLib**);
     577HRESULT WINAPI LoadTypeLibEx(LPCOLESTR,REGKIND,ITypeLib**);
     578HRESULT WINAPI QueryPathOfRegTypeLib(REFGUID,WORD,WORD,LCID,LPBSTR);
     579HRESULT WINAPI RegisterTypeLib(ITypeLib*,OLECHAR*,OLECHAR*);
     580HRESULT WINAPI UnRegisterTypeLib(REFGUID,WORD,WORD,LCID,SYSKIND);
     581
    483582#ifdef __cplusplus
    484583} /* extern "C" */
    485584#endif
    486585
    487 typedef struct tagPARAMDATA {
    488     OLECHAR16 * szName;    /* parameter name */
    489     VARTYPE vt;         /* parameter type */
    490 } PARAMDATA, * LPPARAMDATA;
    491 
    492 typedef struct tagMETHODDATA {
    493     OLECHAR16 * szName;    /* method name */
    494     PARAMDATA * ppdata;  /* pointer to an array of PARAMDATAs */
    495     DISPID dispid;      /* method ID */
    496     UINT16 iMeth;         /* method index */
    497     CALLCONV_OLE2 cc;        /* calling convention */
    498     UINT16 cArgs;         /* count of arguments */
    499     WORD wFlags;        /* same wFlags as on IDispatch::Invoke() */
    500     VARTYPE vtReturn;
    501 } METHODDATA, * LPMETHODDATA;
    502 
    503 typedef struct tagINTERFACEDATA {
    504     METHODDATA * pmethdata;  /* pointer to an array of METHODDATAs */
    505     UINT16 cMembers;      /* count of members */
    506 } INTERFACEDATA, * LPINTERFACEDATA;
    507586
    508587#endif /*__WINE_OLEAUTO_H*/
Note: See TracChangeset for help on using the changeset viewer.