[1166] | 1 | cpp_quote("/**")
|
---|
| 2 | cpp_quote(" * This file is part of the mingw-w64 runtime package.")
|
---|
| 3 | cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
|
---|
| 4 | cpp_quote(" */")
|
---|
| 5 | cpp_quote("")
|
---|
| 6 | cpp_quote("#include <winapifamily.h>")
|
---|
| 7 |
|
---|
| 8 | #ifndef DO_NO_IMPORTS
|
---|
| 9 | import "objidl.idl";
|
---|
| 10 | #endif
|
---|
| 11 |
|
---|
| 12 | cpp_quote("")
|
---|
| 13 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
|
---|
| 14 |
|
---|
| 15 | interface ICreateTypeInfo;
|
---|
| 16 | interface ICreateTypeInfo2;
|
---|
| 17 | interface ICreateTypeLib;
|
---|
| 18 | interface ICreateTypeLib2;
|
---|
| 19 | cpp_quote("#endif")
|
---|
| 20 | cpp_quote("")
|
---|
| 21 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
|
---|
| 22 | interface IDispatch;
|
---|
| 23 | interface IEnumVARIANT;
|
---|
| 24 | interface ITypeComp;
|
---|
| 25 | cpp_quote("#endif")
|
---|
| 26 | cpp_quote("")
|
---|
| 27 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
|
---|
| 28 | interface ITypeInfo;
|
---|
| 29 | interface ITypeInfo2;
|
---|
| 30 | interface ITypeLib;
|
---|
| 31 | interface ITypeLib2;
|
---|
| 32 | interface ITypeChangeEvents;
|
---|
| 33 | interface IErrorInfo;
|
---|
| 34 | interface ICreateErrorInfo;
|
---|
| 35 | interface ISupportErrorInfo;
|
---|
| 36 | interface ITypeFactory;
|
---|
| 37 | interface ITypeMarshal;
|
---|
| 38 | interface IRecordInfo;
|
---|
| 39 | cpp_quote("#endif")
|
---|
| 40 | cpp_quote("")
|
---|
| 41 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
|
---|
| 42 | [version (1.0), pointer_default (unique)]
|
---|
| 43 | interface IOleAutomationTypes {
|
---|
| 44 | typedef CY CURRENCY;
|
---|
| 45 | typedef struct tagSAFEARRAYBOUND {
|
---|
| 46 | ULONG cElements;
|
---|
| 47 | LONG lLbound;
|
---|
| 48 | } SAFEARRAYBOUND,*LPSAFEARRAYBOUND;
|
---|
| 49 |
|
---|
| 50 | cpp_quote("")
|
---|
| 51 | typedef [unique] struct _wireVARIANT *wireVARIANT;
|
---|
| 52 | typedef [unique] struct _wireBRECORD *wireBRECORD;
|
---|
| 53 | cpp_quote("")
|
---|
| 54 | typedef struct _wireSAFEARR_BSTR {
|
---|
| 55 | ULONG Size;
|
---|
| 56 | [size_is (Size), ref] wireBSTR *aBstr;
|
---|
| 57 | } SAFEARR_BSTR;
|
---|
| 58 |
|
---|
| 59 | cpp_quote("")
|
---|
| 60 | typedef struct _wireSAFEARR_UNKNOWN {
|
---|
| 61 | ULONG Size;
|
---|
| 62 | [size_is (Size), ref] IUnknown **apUnknown;
|
---|
| 63 | } SAFEARR_UNKNOWN;
|
---|
| 64 |
|
---|
| 65 | cpp_quote("")
|
---|
| 66 | typedef struct _wireSAFEARR_DISPATCH {
|
---|
| 67 | ULONG Size;
|
---|
| 68 | [size_is (Size), ref] IDispatch **apDispatch;
|
---|
| 69 | } SAFEARR_DISPATCH;
|
---|
| 70 |
|
---|
| 71 | cpp_quote("")
|
---|
| 72 | typedef struct _wireSAFEARR_VARIANT {
|
---|
| 73 | ULONG Size;
|
---|
| 74 | [size_is (Size), ref] wireVARIANT *aVariant;
|
---|
| 75 | } SAFEARR_VARIANT;
|
---|
| 76 |
|
---|
| 77 | cpp_quote("")
|
---|
| 78 | typedef struct _wireSAFEARR_BRECORD {
|
---|
| 79 | ULONG Size;
|
---|
| 80 | [size_is (Size), ref] wireBRECORD *aRecord;
|
---|
| 81 | } SAFEARR_BRECORD;
|
---|
| 82 |
|
---|
| 83 | cpp_quote("")
|
---|
| 84 | typedef struct _wireSAFEARR_HAVEIID {
|
---|
| 85 | ULONG Size;
|
---|
| 86 | [size_is (Size), ref] IUnknown **apUnknown;
|
---|
| 87 | IID iid;
|
---|
| 88 | } SAFEARR_HAVEIID;
|
---|
| 89 |
|
---|
| 90 | cpp_quote("")
|
---|
| 91 | typedef [v1_enum] enum tagSF_TYPE {
|
---|
| 92 | SF_ERROR = VT_ERROR,
|
---|
| 93 | SF_I1 = VT_I1,
|
---|
| 94 | SF_I2 = VT_I2,
|
---|
| 95 | SF_I4 = VT_I4,
|
---|
| 96 | SF_I8 = VT_I8,
|
---|
| 97 | SF_BSTR = VT_BSTR,
|
---|
| 98 | SF_UNKNOWN = VT_UNKNOWN,
|
---|
| 99 | SF_DISPATCH = VT_DISPATCH,
|
---|
| 100 | SF_VARIANT = VT_VARIANT,
|
---|
| 101 | SF_RECORD = VT_RECORD,
|
---|
| 102 | SF_HAVEIID = VT_UNKNOWN | VT_RESERVED
|
---|
| 103 | } SF_TYPE;
|
---|
| 104 |
|
---|
| 105 | cpp_quote("")
|
---|
| 106 | typedef union _wireSAFEARRAY_UNION switch (ULONG sfType) u {
|
---|
| 107 | case SF_BSTR: SAFEARR_BSTR BstrStr;
|
---|
| 108 | case SF_UNKNOWN: SAFEARR_UNKNOWN UnknownStr;
|
---|
| 109 | case SF_DISPATCH: SAFEARR_DISPATCH DispatchStr;
|
---|
| 110 | case SF_VARIANT: SAFEARR_VARIANT VariantStr;
|
---|
| 111 | case SF_RECORD: SAFEARR_BRECORD RecordStr;
|
---|
| 112 | case SF_HAVEIID: SAFEARR_HAVEIID HaveIidStr;
|
---|
| 113 | case SF_I1: BYTE_SIZEDARR ByteStr;
|
---|
| 114 | case SF_I2: WORD_SIZEDARR WordStr;
|
---|
| 115 | case SF_I4: DWORD_SIZEDARR LongStr;
|
---|
| 116 | case SF_I8: HYPER_SIZEDARR HyperStr;
|
---|
| 117 | } SAFEARRAYUNION;
|
---|
| 118 |
|
---|
| 119 | cpp_quote("")
|
---|
| 120 | typedef [unique] struct _wireSAFEARRAY {
|
---|
| 121 | USHORT cDims;
|
---|
| 122 | USHORT fFeatures;
|
---|
| 123 | ULONG cbElements;
|
---|
| 124 | ULONG cLocks;
|
---|
| 125 | SAFEARRAYUNION uArrayStructs;
|
---|
| 126 | [size_is (cDims)] SAFEARRAYBOUND rgsabound[];
|
---|
| 127 | } *wireSAFEARRAY;
|
---|
| 128 | typedef [unique] wireSAFEARRAY *wirePSAFEARRAY;
|
---|
| 129 |
|
---|
| 130 | cpp_quote("")
|
---|
| 131 | typedef struct tagSAFEARRAY {
|
---|
| 132 | USHORT cDims;
|
---|
| 133 | USHORT fFeatures;
|
---|
| 134 | ULONG cbElements;
|
---|
| 135 | ULONG cLocks;
|
---|
| 136 | PVOID pvData;
|
---|
| 137 | SAFEARRAYBOUND rgsabound[];
|
---|
| 138 | } SAFEARRAY;
|
---|
| 139 | typedef [wire_marshal (wirePSAFEARRAY)] SAFEARRAY *LPSAFEARRAY;
|
---|
| 140 |
|
---|
| 141 | cpp_quote("")
|
---|
| 142 | const USHORT FADF_AUTO = 0x0001;
|
---|
| 143 | const USHORT FADF_STATIC = 0x0002;
|
---|
| 144 | const USHORT FADF_EMBEDDED = 0x0004;
|
---|
| 145 | const USHORT FADF_FIXEDSIZE = 0x0010;
|
---|
| 146 | const USHORT FADF_RECORD = 0x0020;
|
---|
| 147 | const USHORT FADF_HAVEIID = 0x0040;
|
---|
| 148 | const USHORT FADF_HAVEVARTYPE= 0x0080;
|
---|
| 149 | const USHORT FADF_BSTR = 0x0100;
|
---|
| 150 | const USHORT FADF_UNKNOWN = 0x0200;
|
---|
| 151 | const USHORT FADF_DISPATCH = 0x0400;
|
---|
| 152 | const USHORT FADF_VARIANT = 0x0800;
|
---|
| 153 | const USHORT FADF_RESERVED = 0xf008;
|
---|
| 154 |
|
---|
| 155 | cpp_quote("")
|
---|
| 156 | cpp_quote("/* Kludge for 3.0 release to disable new default-behavior.")
|
---|
| 157 | cpp_quote(" * For now we define _FORCENAMELESSUNION. For 4.0 this define")
|
---|
| 158 | cpp_quote(" * will be removed. */")
|
---|
| 159 | cpp_quote("#ifndef _FORCENAMELESSUNION")
|
---|
| 160 | cpp_quote("#define _FORCENAMELESSUNION 1")
|
---|
| 161 | cpp_quote("#endif")
|
---|
| 162 | cpp_quote("")
|
---|
| 163 | cpp_quote("#if (__STDC__ && !defined(__cplusplus) && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION) || (defined (_MSC_VER) && !defined(_MSC_EXTENSIONS) && !defined(_FORCENAMELESSUNION))")
|
---|
| 164 | cpp_quote("#define __VARIANT_NAME_1 n1")
|
---|
| 165 | cpp_quote("#define __VARIANT_NAME_2 n2")
|
---|
| 166 | cpp_quote("#define __VARIANT_NAME_3 n3")
|
---|
| 167 | cpp_quote("#define __VARIANT_NAME_4 brecVal")
|
---|
| 168 | cpp_quote("#else")
|
---|
| 169 | cpp_quote("#define __tagVARIANT")
|
---|
| 170 | cpp_quote("#define __VARIANT_NAME_1")
|
---|
| 171 | cpp_quote("#define __VARIANT_NAME_2")
|
---|
| 172 | cpp_quote("#define __VARIANT_NAME_3")
|
---|
| 173 | cpp_quote("#define __tagBRECORD")
|
---|
| 174 | cpp_quote("#define __VARIANT_NAME_4")
|
---|
| 175 | cpp_quote("#endif")
|
---|
| 176 |
|
---|
| 177 | cpp_quote("")
|
---|
| 178 | typedef [wire_marshal (wireVARIANT)] struct tagVARIANT VARIANT;
|
---|
| 179 |
|
---|
| 180 | cpp_quote("")
|
---|
| 181 | struct tagVARIANT {
|
---|
| 182 | union {
|
---|
| 183 | struct __tagVARIANT {
|
---|
| 184 | VARTYPE vt;
|
---|
| 185 | WORD wReserved1;
|
---|
| 186 | WORD wReserved2;
|
---|
| 187 | WORD wReserved3;
|
---|
| 188 | union {
|
---|
| 189 | LONGLONG llVal;
|
---|
| 190 | LONG lVal;
|
---|
| 191 | BYTE bVal;
|
---|
| 192 | SHORT iVal;
|
---|
| 193 | FLOAT fltVal;
|
---|
| 194 | DOUBLE dblVal;
|
---|
| 195 | VARIANT_BOOL boolVal;
|
---|
| 196 | /* Removed due conflict with bool and gcc's inablity to express a macro expanding to a comment.
|
---|
| 197 | _VARIANT_BOOL bool; */
|
---|
| 198 | SCODE scode;
|
---|
| 199 | CY cyVal;
|
---|
| 200 | DATE date;
|
---|
| 201 | BSTR bstrVal;
|
---|
| 202 | IUnknown *punkVal;
|
---|
| 203 | IDispatch *pdispVal;
|
---|
| 204 | SAFEARRAY *parray;
|
---|
| 205 | BYTE *pbVal;
|
---|
| 206 | SHORT *piVal;
|
---|
| 207 | LONG *plVal;
|
---|
| 208 | LONGLONG *pllVal;
|
---|
| 209 | FLOAT *pfltVal;
|
---|
| 210 | DOUBLE *pdblVal;
|
---|
| 211 | VARIANT_BOOL *pboolVal;
|
---|
| 212 | /* Removed due conflict with bool and gcc's inablity to express a macro expanding to a comment.
|
---|
| 213 | _VARIANT_BOOL *pbool; */
|
---|
| 214 | SCODE *pscode;
|
---|
| 215 | CY *pcyVal;
|
---|
| 216 | DATE *pdate;
|
---|
| 217 | BSTR *pbstrVal;
|
---|
| 218 | IUnknown **ppunkVal;
|
---|
| 219 | IDispatch **ppdispVal;
|
---|
| 220 | SAFEARRAY **pparray;
|
---|
| 221 | VARIANT *pvarVal;
|
---|
| 222 | PVOID byref;
|
---|
| 223 | CHAR cVal;
|
---|
| 224 | USHORT uiVal;
|
---|
| 225 | ULONG ulVal;
|
---|
| 226 | ULONGLONG ullVal;
|
---|
| 227 | INT intVal;
|
---|
| 228 | UINT uintVal;
|
---|
| 229 | DECIMAL *pdecVal;
|
---|
| 230 | CHAR *pcVal;
|
---|
| 231 | USHORT *puiVal;
|
---|
| 232 | ULONG *pulVal;
|
---|
| 233 | ULONGLONG *pullVal;
|
---|
| 234 | INT *pintVal;
|
---|
| 235 | UINT *puintVal;
|
---|
| 236 | struct __tagBRECORD {
|
---|
| 237 | PVOID pvRecord;
|
---|
| 238 | IRecordInfo *pRecInfo;
|
---|
| 239 | } __VARIANT_NAME_4;
|
---|
| 240 | } __VARIANT_NAME_3;
|
---|
| 241 | } __VARIANT_NAME_2;
|
---|
| 242 | DECIMAL decVal;
|
---|
| 243 | } __VARIANT_NAME_1;
|
---|
| 244 | };
|
---|
| 245 |
|
---|
| 246 | cpp_quote("")
|
---|
| 247 | typedef VARIANT *LPVARIANT;
|
---|
| 248 | typedef VARIANT VARIANTARG;
|
---|
| 249 | typedef VARIANT *LPVARIANTARG;
|
---|
| 250 | cpp_quote("#if 0")
|
---|
| 251 | typedef const VARIANT *REFVARIANT;
|
---|
| 252 | cpp_quote("#else")
|
---|
| 253 | cpp_quote("")
|
---|
| 254 | cpp_quote("#ifndef _REFVARIANT_DEFINED")
|
---|
| 255 | cpp_quote("#define _REFVARIANT_DEFINED")
|
---|
| 256 | cpp_quote("#ifdef __cplusplus")
|
---|
| 257 | cpp_quote("#define REFVARIANT const VARIANT &")
|
---|
| 258 | cpp_quote("#else")
|
---|
| 259 | cpp_quote("#define REFVARIANT const VARIANT * __MIDL_CONST")
|
---|
| 260 | cpp_quote("#endif")
|
---|
| 261 | cpp_quote("#endif")
|
---|
| 262 | cpp_quote("#endif")
|
---|
| 263 |
|
---|
| 264 | cpp_quote("")
|
---|
| 265 | struct _wireBRECORD {
|
---|
| 266 | ULONG fFlags;
|
---|
| 267 | ULONG clSize;
|
---|
| 268 | IRecordInfo *pRecInfo;
|
---|
| 269 | [size_is (clSize)] byte *pRecord;
|
---|
| 270 | };
|
---|
| 271 |
|
---|
| 272 | cpp_quote("")
|
---|
| 273 | struct _wireVARIANT {
|
---|
| 274 | DWORD clSize;
|
---|
| 275 | DWORD rpcReserved;
|
---|
| 276 | USHORT vt;
|
---|
| 277 | USHORT wReserved1;
|
---|
| 278 | USHORT wReserved2;
|
---|
| 279 | USHORT wReserved3;
|
---|
| 280 | [switch_type (ULONG), switch_is (vt)] union {
|
---|
| 281 | [case (VT_I8)] LONGLONG llVal;
|
---|
| 282 | [case (VT_I4)] LONG lVal;
|
---|
| 283 | [case (VT_UI1)] BYTE bVal;
|
---|
| 284 | [case (VT_I2)] SHORT iVal;
|
---|
| 285 | [case (VT_R4)] FLOAT fltVal;
|
---|
| 286 | [case (VT_R8)] DOUBLE dblVal;
|
---|
| 287 | [case (VT_BOOL)] VARIANT_BOOL boolVal;
|
---|
| 288 | [case (VT_ERROR)] SCODE scode;
|
---|
| 289 | [case (VT_CY)] CY cyVal;
|
---|
| 290 | [case (VT_DATE)] DATE date;
|
---|
| 291 | [case (VT_BSTR)] wireBSTR bstrVal;
|
---|
| 292 | [case (VT_UNKNOWN)] IUnknown *punkVal;
|
---|
| 293 | [case (VT_DISPATCH)] IDispatch *pdispVal;
|
---|
| 294 | [case (VT_ARRAY)] wirePSAFEARRAY parray;
|
---|
| 295 | [case (VT_RECORD, VT_RECORD|VT_BYREF)]
|
---|
| 296 | wireBRECORD brecVal;
|
---|
| 297 | [case (VT_UI1|VT_BYREF)]
|
---|
| 298 | BYTE *pbVal;
|
---|
| 299 | [case (VT_I2|VT_BYREF)]
|
---|
| 300 | SHORT *piVal;
|
---|
| 301 | [case (VT_I4|VT_BYREF)]
|
---|
| 302 | LONG *plVal;
|
---|
| 303 | [case (VT_I8|VT_BYREF)]
|
---|
| 304 | LONGLONG *pllVal;
|
---|
| 305 | [case (VT_R4|VT_BYREF)]
|
---|
| 306 | FLOAT *pfltVal;
|
---|
| 307 | [case (VT_R8|VT_BYREF)]
|
---|
| 308 | DOUBLE *pdblVal;
|
---|
| 309 | [case (VT_BOOL|VT_BYREF)]
|
---|
| 310 | VARIANT_BOOL *pboolVal;
|
---|
| 311 | [case (VT_ERROR|VT_BYREF)]
|
---|
| 312 | SCODE *pscode;
|
---|
| 313 | [case (VT_CY|VT_BYREF)]
|
---|
| 314 | CY *pcyVal;
|
---|
| 315 | [case (VT_DATE|VT_BYREF)]
|
---|
| 316 | DATE *pdate;
|
---|
| 317 | [case (VT_BSTR|VT_BYREF)]
|
---|
| 318 | wireBSTR *pbstrVal;
|
---|
| 319 | [case (VT_UNKNOWN|VT_BYREF)]
|
---|
| 320 | IUnknown **ppunkVal;
|
---|
| 321 | [case (VT_DISPATCH|VT_BYREF)]
|
---|
| 322 | IDispatch **ppdispVal;
|
---|
| 323 | [case (VT_ARRAY|VT_BYREF)]
|
---|
| 324 | wirePSAFEARRAY *pparray;
|
---|
| 325 | [case (VT_VARIANT|VT_BYREF)]
|
---|
| 326 | wireVARIANT *pvarVal;
|
---|
| 327 | [case (VT_I1)] CHAR cVal;
|
---|
| 328 | [case (VT_UI2)] USHORT uiVal;
|
---|
| 329 | [case (VT_UI4)] ULONG ulVal;
|
---|
| 330 | [case (VT_UI8)] ULONGLONG ullVal;
|
---|
| 331 | [case (VT_INT)] INT intVal;
|
---|
| 332 | [case (VT_UINT)] UINT uintVal;
|
---|
| 333 | [case (VT_DECIMAL)] DECIMAL decVal;
|
---|
| 334 | [case (VT_BYREF|VT_DECIMAL)]
|
---|
| 335 | DECIMAL *pdecVal;
|
---|
| 336 | [case (VT_BYREF|VT_I1)]
|
---|
| 337 | CHAR *pcVal;
|
---|
| 338 | [case (VT_BYREF|VT_UI2)]
|
---|
| 339 | USHORT *puiVal;
|
---|
| 340 | [case (VT_BYREF|VT_UI4)]
|
---|
| 341 | ULONG *pulVal;
|
---|
| 342 | [case (VT_BYREF|VT_UI8)]
|
---|
| 343 | ULONGLONG *pullVal;
|
---|
| 344 | [case (VT_BYREF|VT_INT)]
|
---|
| 345 | INT *pintVal;
|
---|
| 346 | [case (VT_BYREF|VT_UINT)]
|
---|
| 347 | UINT *puintVal;
|
---|
| 348 | [case (VT_EMPTY)];
|
---|
| 349 | [case (VT_NULL)];
|
---|
| 350 | };
|
---|
| 351 | };
|
---|
| 352 |
|
---|
| 353 | cpp_quote("")
|
---|
| 354 | typedef LONG DISPID;
|
---|
| 355 | typedef DISPID MEMBERID;
|
---|
| 356 | typedef DWORD HREFTYPE;
|
---|
| 357 | typedef [v1_enum] enum tagTYPEKIND {
|
---|
| 358 | TKIND_ENUM = 0,
|
---|
| 359 | TKIND_RECORD,
|
---|
| 360 | TKIND_MODULE,
|
---|
| 361 | TKIND_INTERFACE,
|
---|
| 362 | TKIND_DISPATCH,
|
---|
| 363 | TKIND_COCLASS,
|
---|
| 364 | TKIND_ALIAS,
|
---|
| 365 | TKIND_UNION,
|
---|
| 366 | TKIND_MAX
|
---|
| 367 | } TYPEKIND;
|
---|
| 368 |
|
---|
| 369 | cpp_quote("")
|
---|
| 370 | typedef struct tagTYPEDESC {
|
---|
| 371 | [switch_type (VARTYPE), switch_is (vt)] union {
|
---|
| 372 | [case (VT_PTR, VT_SAFEARRAY)] struct tagTYPEDESC *lptdesc;
|
---|
| 373 | [case (VT_CARRAY)] struct tagARRAYDESC *lpadesc;
|
---|
| 374 | [case (VT_USERDEFINED)] HREFTYPE hreftype;
|
---|
| 375 | [default];
|
---|
| 376 | };
|
---|
| 377 | VARTYPE vt;
|
---|
| 378 | } TYPEDESC;
|
---|
| 379 |
|
---|
| 380 | cpp_quote("")
|
---|
| 381 | typedef struct tagARRAYDESC {
|
---|
| 382 | TYPEDESC tdescElem;
|
---|
| 383 | USHORT cDims;
|
---|
| 384 | [size_is (cDims)] SAFEARRAYBOUND rgbounds[];
|
---|
| 385 | } ARRAYDESC;
|
---|
| 386 |
|
---|
| 387 | cpp_quote("")
|
---|
| 388 | typedef struct tagPARAMDESCEX {
|
---|
| 389 | ULONG cBytes;
|
---|
| 390 | VARIANTARG varDefaultValue;
|
---|
| 391 | } PARAMDESCEX,*LPPARAMDESCEX;
|
---|
| 392 |
|
---|
| 393 | cpp_quote("")
|
---|
| 394 | typedef struct tagPARAMDESC {
|
---|
| 395 | LPPARAMDESCEX pparamdescex;
|
---|
| 396 | USHORT wParamFlags;
|
---|
| 397 | } PARAMDESC,*LPPARAMDESC;
|
---|
| 398 |
|
---|
| 399 | cpp_quote("")
|
---|
| 400 | const USHORT PARAMFLAG_NONE = 0x00;
|
---|
| 401 | const USHORT PARAMFLAG_FIN = 0x01;
|
---|
| 402 | const USHORT PARAMFLAG_FOUT = 0x02;
|
---|
| 403 | const USHORT PARAMFLAG_FLCID = 0x04;
|
---|
| 404 | const USHORT PARAMFLAG_FRETVAL = 0x08;
|
---|
| 405 | const USHORT PARAMFLAG_FOPT = 0x10;
|
---|
| 406 | const USHORT PARAMFLAG_FHASDEFAULT = 0x20;
|
---|
| 407 | const USHORT PARAMFLAG_FHASCUSTDATA = 0x40;
|
---|
| 408 |
|
---|
| 409 | cpp_quote("")
|
---|
| 410 | typedef struct tagIDLDESC {
|
---|
| 411 | ULONG_PTR dwReserved;
|
---|
| 412 | USHORT wIDLFlags;
|
---|
| 413 | } IDLDESC,*LPIDLDESC;
|
---|
| 414 |
|
---|
| 415 | cpp_quote("")
|
---|
| 416 | const USHORT IDLFLAG_NONE = PARAMFLAG_NONE;
|
---|
| 417 | const USHORT IDLFLAG_FIN = PARAMFLAG_FIN;
|
---|
| 418 | const USHORT IDLFLAG_FOUT = PARAMFLAG_FOUT;
|
---|
| 419 | const USHORT IDLFLAG_FLCID = PARAMFLAG_FLCID;
|
---|
| 420 | const USHORT IDLFLAG_FRETVAL = PARAMFLAG_FRETVAL;
|
---|
| 421 | cpp_quote("")
|
---|
| 422 | cpp_quote("#if 0")
|
---|
| 423 | typedef struct tagELEMDESC {
|
---|
| 424 | TYPEDESC tdesc;
|
---|
| 425 | PARAMDESC paramdesc;
|
---|
| 426 | } ELEMDESC;
|
---|
| 427 | cpp_quote("#else")
|
---|
| 428 | cpp_quote("")
|
---|
| 429 | cpp_quote(" typedef struct tagELEMDESC {")
|
---|
| 430 | cpp_quote(" TYPEDESC tdesc;")
|
---|
| 431 | cpp_quote(" __C89_NAMELESS union {")
|
---|
| 432 | cpp_quote(" IDLDESC idldesc;")
|
---|
| 433 | cpp_quote(" PARAMDESC paramdesc;")
|
---|
| 434 | cpp_quote(" } DUMMYUNIONNAME;")
|
---|
| 435 | cpp_quote(" } ELEMDESC,*LPELEMDESC;")
|
---|
| 436 | cpp_quote("#endif")
|
---|
| 437 |
|
---|
| 438 | cpp_quote("")
|
---|
| 439 | typedef struct tagTYPEATTR {
|
---|
| 440 | GUID guid;
|
---|
| 441 | LCID lcid;
|
---|
| 442 | DWORD dwReserved;
|
---|
| 443 | MEMBERID memidConstructor;
|
---|
| 444 | MEMBERID memidDestructor;
|
---|
| 445 | LPOLESTR lpstrSchema;
|
---|
| 446 | ULONG cbSizeInstance;
|
---|
| 447 | TYPEKIND typekind;
|
---|
| 448 | WORD cFuncs;
|
---|
| 449 | WORD cVars;
|
---|
| 450 | WORD cImplTypes;
|
---|
| 451 | WORD cbSizeVft;
|
---|
| 452 | WORD cbAlignment;
|
---|
| 453 | WORD wTypeFlags;
|
---|
| 454 | WORD wMajorVerNum;
|
---|
| 455 | WORD wMinorVerNum;
|
---|
| 456 | TYPEDESC tdescAlias;
|
---|
| 457 | IDLDESC idldescType;
|
---|
| 458 | } TYPEATTR,*LPTYPEATTR;
|
---|
| 459 |
|
---|
| 460 | cpp_quote("")
|
---|
| 461 | typedef struct tagDISPPARAMS {
|
---|
| 462 | [size_is (cArgs)] VARIANTARG *rgvarg;
|
---|
| 463 | [size_is (cNamedArgs)] DISPID *rgdispidNamedArgs;
|
---|
| 464 | UINT cArgs;
|
---|
| 465 | UINT cNamedArgs;
|
---|
| 466 | } DISPPARAMS;
|
---|
| 467 | cpp_quote("")
|
---|
| 468 | cpp_quote("#if 0")
|
---|
| 469 | typedef struct tagEXCEPINFO {
|
---|
| 470 | WORD wCode;
|
---|
| 471 | WORD wReserved;
|
---|
| 472 | BSTR bstrSource;
|
---|
| 473 | BSTR bstrDescription;
|
---|
| 474 | BSTR bstrHelpFile;
|
---|
| 475 | DWORD dwHelpContext;
|
---|
| 476 | ULONG_PTR pvReserved;
|
---|
| 477 | ULONG_PTR pfnDeferredFillIn;
|
---|
| 478 | SCODE scode;
|
---|
| 479 | } EXCEPINFO;
|
---|
| 480 | cpp_quote("#else")
|
---|
| 481 | cpp_quote(" typedef struct tagEXCEPINFO {")
|
---|
| 482 | cpp_quote(" WORD wCode;")
|
---|
| 483 | cpp_quote(" WORD wReserved;")
|
---|
| 484 | cpp_quote(" BSTR bstrSource;")
|
---|
| 485 | cpp_quote(" BSTR bstrDescription;")
|
---|
| 486 | cpp_quote(" BSTR bstrHelpFile;")
|
---|
| 487 | cpp_quote(" DWORD dwHelpContext;")
|
---|
| 488 | cpp_quote(" PVOID pvReserved;")
|
---|
| 489 | cpp_quote(" HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *);")
|
---|
| 490 | cpp_quote(" SCODE scode;")
|
---|
| 491 | cpp_quote(" } EXCEPINFO, *LPEXCEPINFO;")
|
---|
| 492 | cpp_quote("#endif")
|
---|
| 493 |
|
---|
| 494 | cpp_quote("")
|
---|
| 495 | typedef [v1_enum] enum tagCALLCONV {
|
---|
| 496 | CC_FASTCALL = 0,
|
---|
| 497 | CC_CDECL = 1,
|
---|
| 498 | CC_MSCPASCAL,
|
---|
| 499 | CC_PASCAL = CC_MSCPASCAL,
|
---|
| 500 | CC_MACPASCAL,
|
---|
| 501 | CC_STDCALL,
|
---|
| 502 | CC_FPFASTCALL,
|
---|
| 503 | CC_SYSCALL,
|
---|
| 504 | CC_MPWCDECL,
|
---|
| 505 | CC_MPWPASCAL,
|
---|
| 506 | CC_MAX
|
---|
| 507 | } CALLCONV;
|
---|
| 508 |
|
---|
| 509 | cpp_quote("")
|
---|
| 510 | typedef [v1_enum] enum tagFUNCKIND {
|
---|
| 511 | FUNC_VIRTUAL,
|
---|
| 512 | FUNC_PUREVIRTUAL,
|
---|
| 513 | FUNC_NONVIRTUAL,
|
---|
| 514 | FUNC_STATIC,
|
---|
| 515 | FUNC_DISPATCH
|
---|
| 516 | } FUNCKIND;
|
---|
| 517 |
|
---|
| 518 | cpp_quote("")
|
---|
| 519 | typedef [v1_enum] enum tagINVOKEKIND {
|
---|
| 520 | INVOKE_FUNC = 1,
|
---|
| 521 | INVOKE_PROPERTYGET = 2,
|
---|
| 522 | INVOKE_PROPERTYPUT = 4,
|
---|
| 523 | INVOKE_PROPERTYPUTREF = 8
|
---|
| 524 | } INVOKEKIND;
|
---|
| 525 |
|
---|
| 526 | cpp_quote("")
|
---|
| 527 | typedef struct tagFUNCDESC {
|
---|
| 528 | MEMBERID memid;
|
---|
| 529 | [size_is (cScodes)] SCODE *lprgscode;
|
---|
| 530 | [size_is (cParams)] ELEMDESC *lprgelemdescParam;
|
---|
| 531 | FUNCKIND funckind;
|
---|
| 532 | INVOKEKIND invkind;
|
---|
| 533 | CALLCONV callconv;
|
---|
| 534 | SHORT cParams;
|
---|
| 535 | SHORT cParamsOpt;
|
---|
| 536 | SHORT oVft;
|
---|
| 537 | SHORT cScodes;
|
---|
| 538 | ELEMDESC elemdescFunc;
|
---|
| 539 | WORD wFuncFlags;
|
---|
| 540 | } FUNCDESC,*LPFUNCDESC;
|
---|
| 541 |
|
---|
| 542 | cpp_quote("")
|
---|
| 543 | typedef [v1_enum] enum tagVARKIND {
|
---|
| 544 | VAR_PERINSTANCE,
|
---|
| 545 | VAR_STATIC,
|
---|
| 546 | VAR_CONST,
|
---|
| 547 | VAR_DISPATCH
|
---|
| 548 | } VARKIND;
|
---|
| 549 |
|
---|
| 550 | cpp_quote("")
|
---|
| 551 | const USHORT IMPLTYPEFLAG_FDEFAULT = 0x1;
|
---|
| 552 | const USHORT IMPLTYPEFLAG_FSOURCE = 0x2;
|
---|
| 553 | const USHORT IMPLTYPEFLAG_FRESTRICTED = 0x4;
|
---|
| 554 | const USHORT IMPLTYPEFLAG_FDEFAULTVTABLE= 0x8;
|
---|
| 555 |
|
---|
| 556 | cpp_quote("")
|
---|
| 557 | typedef struct tagVARDESC {
|
---|
| 558 | MEMBERID memid;
|
---|
| 559 | LPOLESTR lpstrSchema;
|
---|
| 560 | [switch_type (VARKIND), switch_is (varkind)] union {
|
---|
| 561 | [case (VAR_PERINSTANCE, VAR_DISPATCH, VAR_STATIC)] ULONG oInst;
|
---|
| 562 | [case (VAR_CONST)] VARIANT *lpvarValue;
|
---|
| 563 | };
|
---|
| 564 | ELEMDESC elemdescVar;
|
---|
| 565 | WORD wVarFlags;
|
---|
| 566 | VARKIND varkind;
|
---|
| 567 | } VARDESC,*LPVARDESC;
|
---|
| 568 |
|
---|
| 569 | cpp_quote("")
|
---|
| 570 | typedef enum tagTYPEFLAGS {
|
---|
| 571 | TYPEFLAG_FAPPOBJECT = 0x01,
|
---|
| 572 | TYPEFLAG_FCANCREATE = 0x02,
|
---|
| 573 | TYPEFLAG_FLICENSED = 0x04,
|
---|
| 574 | TYPEFLAG_FPREDECLID = 0x08,
|
---|
| 575 | TYPEFLAG_FHIDDEN = 0x10,
|
---|
| 576 | TYPEFLAG_FCONTROL = 0x20,
|
---|
| 577 | TYPEFLAG_FDUAL = 0x40,
|
---|
| 578 | TYPEFLAG_FNONEXTENSIBLE = 0x80,
|
---|
| 579 | TYPEFLAG_FOLEAUTOMATION = 0x100,
|
---|
| 580 | TYPEFLAG_FRESTRICTED = 0x200,
|
---|
| 581 | TYPEFLAG_FAGGREGATABLE = 0x400,
|
---|
| 582 | TYPEFLAG_FREPLACEABLE = 0x800,
|
---|
| 583 | TYPEFLAG_FDISPATCHABLE = 0x1000,
|
---|
| 584 | TYPEFLAG_FREVERSEBIND = 0x2000,
|
---|
| 585 | TYPEFLAG_FPROXY = 0x4000
|
---|
| 586 | } TYPEFLAGS;
|
---|
| 587 |
|
---|
| 588 | cpp_quote("")
|
---|
| 589 | typedef enum tagFUNCFLAGS {
|
---|
| 590 | FUNCFLAG_FRESTRICTED = 0x1,
|
---|
| 591 | FUNCFLAG_FSOURCE = 0x2,
|
---|
| 592 | FUNCFLAG_FBINDABLE = 0x4,
|
---|
| 593 | FUNCFLAG_FREQUESTEDIT = 0x8,
|
---|
| 594 | FUNCFLAG_FDISPLAYBIND = 0x10,
|
---|
| 595 | FUNCFLAG_FDEFAULTBIND = 0x20,
|
---|
| 596 | FUNCFLAG_FHIDDEN = 0x40,
|
---|
| 597 | FUNCFLAG_FUSESGETLASTERROR = 0x80,
|
---|
| 598 | FUNCFLAG_FDEFAULTCOLLELEM = 0x100,
|
---|
| 599 | FUNCFLAG_FUIDEFAULT = 0x200,
|
---|
| 600 | FUNCFLAG_FNONBROWSABLE = 0x400,
|
---|
| 601 | FUNCFLAG_FREPLACEABLE = 0x800,
|
---|
| 602 | FUNCFLAG_FIMMEDIATEBIND = 0x1000
|
---|
| 603 | } FUNCFLAGS;
|
---|
| 604 |
|
---|
| 605 | cpp_quote("")
|
---|
| 606 | typedef enum tagVARFLAGS {
|
---|
| 607 | VARFLAG_FREADONLY = 0x1,
|
---|
| 608 | VARFLAG_FSOURCE = 0x2,
|
---|
| 609 | VARFLAG_FBINDABLE = 0x4,
|
---|
| 610 | VARFLAG_FREQUESTEDIT = 0x8,
|
---|
| 611 | VARFLAG_FDISPLAYBIND = 0x10,
|
---|
| 612 | VARFLAG_FDEFAULTBIND = 0x20,
|
---|
| 613 | VARFLAG_FHIDDEN = 0x40,
|
---|
| 614 | VARFLAG_FRESTRICTED = 0x80,
|
---|
| 615 | VARFLAG_FDEFAULTCOLLELEM = 0x100,
|
---|
| 616 | VARFLAG_FUIDEFAULT = 0x200,
|
---|
| 617 | VARFLAG_FNONBROWSABLE = 0x400,
|
---|
| 618 | VARFLAG_FREPLACEABLE = 0x800,
|
---|
| 619 | VARFLAG_FIMMEDIATEBIND = 0x1000
|
---|
| 620 | } VARFLAGS;
|
---|
| 621 |
|
---|
| 622 | cpp_quote("")
|
---|
| 623 | typedef [wire_marshal (DWORD)] struct tagCLEANLOCALSTORAGE {
|
---|
| 624 | IUnknown *pInterface;
|
---|
| 625 | PVOID pStorage;
|
---|
| 626 | DWORD flags;
|
---|
| 627 | } CLEANLOCALSTORAGE;
|
---|
| 628 |
|
---|
| 629 | cpp_quote("")
|
---|
| 630 | typedef struct tagCUSTDATAITEM {
|
---|
| 631 | GUID guid;
|
---|
| 632 | VARIANTARG varValue;
|
---|
| 633 | } CUSTDATAITEM,*LPCUSTDATAITEM;
|
---|
| 634 |
|
---|
| 635 | cpp_quote("")
|
---|
| 636 | typedef struct tagCUSTDATA {
|
---|
| 637 | DWORD cCustData;
|
---|
| 638 | [size_is (cCustData)] LPCUSTDATAITEM prgCustData;
|
---|
| 639 | } CUSTDATA,*LPCUSTDATA;
|
---|
| 640 | }
|
---|
| 641 | cpp_quote("#endif")
|
---|
| 642 | cpp_quote("")
|
---|
| 643 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
|
---|
| 644 | [object, uuid (00020405-0000-0000-C000-000000000046), pointer_default (unique), local]
|
---|
| 645 | interface ICreateTypeInfo: IUnknown {
|
---|
| 646 | typedef [unique] ICreateTypeInfo *LPCREATETYPEINFO;
|
---|
| 647 | cpp_quote("")
|
---|
| 648 | HRESULT SetGuid ([in] REFGUID guid);
|
---|
| 649 | HRESULT SetTypeFlags ([in] UINT uTypeFlags);
|
---|
| 650 | HRESULT SetDocString ([in] LPOLESTR pStrDoc);
|
---|
| 651 | HRESULT SetHelpContext ([in] DWORD dwHelpContext);
|
---|
| 652 | HRESULT SetVersion ([in] WORD wMajorVerNum,[in] WORD wMinorVerNum);
|
---|
| 653 | HRESULT AddRefTypeInfo ([in] ITypeInfo *pTInfo,[in] HREFTYPE *phRefType);
|
---|
| 654 | HRESULT AddFuncDesc ([in] UINT index,[in] FUNCDESC *pFuncDesc);
|
---|
| 655 | HRESULT AddImplType ([in] UINT index,[in] HREFTYPE hRefType);
|
---|
| 656 | HRESULT SetImplTypeFlags ([in] UINT index,[in] INT implTypeFlags);
|
---|
| 657 | HRESULT SetAlignment ([in] WORD cbAlignment);
|
---|
| 658 | HRESULT SetSchema ([in] LPOLESTR pStrSchema);
|
---|
| 659 | HRESULT AddVarDesc ([in] UINT index,[in] VARDESC *pVarDesc);
|
---|
| 660 | HRESULT SetFuncAndParamNames ([in] UINT index,[in, size_is ((UINT) cNames)] LPOLESTR *rgszNames,[in] UINT cNames);
|
---|
| 661 | HRESULT SetVarName ([in] UINT index,[in] LPOLESTR szName);
|
---|
| 662 | HRESULT SetTypeDescAlias ([in] TYPEDESC *pTDescAlias);
|
---|
| 663 | HRESULT DefineFuncAsDllEntry ([in] UINT index,[in] LPOLESTR szDllName,[in] LPOLESTR szProcName);
|
---|
| 664 | HRESULT SetFuncDocString ([in] UINT index,[in] LPOLESTR szDocString);
|
---|
| 665 | HRESULT SetVarDocString ([in] UINT index,[in] LPOLESTR szDocString);
|
---|
| 666 | HRESULT SetFuncHelpContext ([in] UINT index,[in] DWORD dwHelpContext);
|
---|
| 667 | HRESULT SetVarHelpContext ([in] UINT index,[in] DWORD dwHelpContext);
|
---|
| 668 | HRESULT SetMops ([in] UINT index,[in] BSTR bstrMops);
|
---|
| 669 | HRESULT SetTypeIdldesc ([in] IDLDESC *pIdlDesc);
|
---|
| 670 | HRESULT LayOut (void);
|
---|
| 671 | }
|
---|
| 672 |
|
---|
| 673 | cpp_quote("")
|
---|
| 674 | [object, uuid (0002040e-0000-0000-C000-000000000046), pointer_default (unique), local]
|
---|
| 675 | interface ICreateTypeInfo2: ICreateTypeInfo {
|
---|
| 676 | typedef [unique] ICreateTypeInfo2 *LPCREATETYPEINFO2;
|
---|
| 677 | cpp_quote("")
|
---|
| 678 | HRESULT DeleteFuncDesc ([in] UINT index);
|
---|
| 679 | HRESULT DeleteFuncDescByMemId ([in] MEMBERID memid,[in] INVOKEKIND invKind);
|
---|
| 680 | HRESULT DeleteVarDesc ([in] UINT index);
|
---|
| 681 | HRESULT DeleteVarDescByMemId ([in] MEMBERID memid);
|
---|
| 682 | HRESULT DeleteImplType ([in] UINT index);
|
---|
| 683 | HRESULT SetCustData ([in] REFGUID guid,[in] VARIANT *pVarVal);
|
---|
| 684 | HRESULT SetFuncCustData ([in] UINT index,[in] REFGUID guid,[in] VARIANT *pVarVal);
|
---|
| 685 | HRESULT SetParamCustData ([in] UINT indexFunc,[in] UINT indexParam,[in] REFGUID guid,[in] VARIANT *pVarVal);
|
---|
| 686 | HRESULT SetVarCustData ([in] UINT index,[in] REFGUID guid,[in] VARIANT *pVarVal);
|
---|
| 687 | HRESULT SetImplTypeCustData ([in] UINT index,[in] REFGUID guid,[in] VARIANT *pVarVal);
|
---|
| 688 | HRESULT SetHelpStringContext ([in] ULONG dwHelpStringContext);
|
---|
| 689 | HRESULT SetFuncHelpStringContext ([in] UINT index,[in] ULONG dwHelpStringContext);
|
---|
| 690 | HRESULT SetVarHelpStringContext ([in] UINT index,[in] ULONG dwHelpStringContext);
|
---|
| 691 | HRESULT Invalidate (void);
|
---|
| 692 | HRESULT SetName ([in] LPOLESTR szName);
|
---|
| 693 | }
|
---|
| 694 | cpp_quote("")
|
---|
| 695 | [object, uuid (00020406-0000-0000-C000-000000000046), pointer_default (unique), local]
|
---|
| 696 | interface ICreateTypeLib : IUnknown {
|
---|
| 697 | typedef [unique] ICreateTypeLib *LPCREATETYPELIB;
|
---|
| 698 | cpp_quote("")
|
---|
| 699 | HRESULT CreateTypeInfo ([in] LPOLESTR szName,[in] TYPEKIND tkind,[out] ICreateTypeInfo **ppCTInfo);
|
---|
| 700 | HRESULT SetName ([in] LPOLESTR szName);
|
---|
| 701 | HRESULT SetVersion ([in] WORD wMajorVerNum,[in] WORD wMinorVerNum);
|
---|
| 702 | HRESULT SetGuid ([in] REFGUID guid);
|
---|
| 703 | HRESULT SetDocString ([in] LPOLESTR szDoc);
|
---|
| 704 | HRESULT SetHelpFileName ([in] LPOLESTR szHelpFileName);
|
---|
| 705 | HRESULT SetHelpContext ([in] DWORD dwHelpContext);
|
---|
| 706 | HRESULT SetLcid ([in] LCID lcid);
|
---|
| 707 | HRESULT SetLibFlags ([in] UINT uLibFlags);
|
---|
| 708 | HRESULT SaveAllChanges (void);
|
---|
| 709 | }
|
---|
| 710 | cpp_quote("")
|
---|
| 711 | [object, uuid (0002040f-0000-0000-C000-000000000046), pointer_default (unique), local]
|
---|
| 712 | interface ICreateTypeLib2 : ICreateTypeLib {
|
---|
| 713 | typedef [unique] ICreateTypeLib2 *LPCREATETYPELIB2;
|
---|
| 714 | HRESULT DeleteTypeInfo ([in] LPOLESTR szName);
|
---|
| 715 | HRESULT SetCustData ([in] REFGUID guid,[in] VARIANT *pVarVal);
|
---|
| 716 | HRESULT SetHelpStringContext ([in] ULONG dwHelpStringContext);
|
---|
| 717 | HRESULT SetHelpStringDll ([in] LPOLESTR szFileName);
|
---|
| 718 | }
|
---|
| 719 | cpp_quote("#endif")
|
---|
| 720 | cpp_quote("")
|
---|
| 721 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
|
---|
| 722 | [object, uuid (00020400-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 723 | interface IDispatch : IUnknown {
|
---|
| 724 | typedef [unique] IDispatch *LPDISPATCH;
|
---|
| 725 | cpp_quote("")
|
---|
| 726 | HRESULT GetTypeInfoCount ([out] UINT *pctinfo);
|
---|
| 727 | HRESULT GetTypeInfo ([in] UINT iTInfo,[in] LCID lcid,[out] ITypeInfo **ppTInfo);
|
---|
| 728 | HRESULT GetIDsOfNames ([in] REFIID riid,[in, size_is (cNames)] LPOLESTR *rgszNames,[in, range (0, 16384)] UINT cNames,[in] LCID lcid,[out, size_is (cNames)] DISPID *rgDispId);
|
---|
| 729 | [local] HRESULT Invoke ([in] DISPID dispIdMember,[in] REFIID riid,[in] LCID lcid,[in] WORD wFlags,[in, out] DISPPARAMS *pDispParams,[out] VARIANT *pVarResult,[out] EXCEPINFO *pExcepInfo,[out] UINT *puArgErr);
|
---|
| 730 | [call_as (Invoke)] HRESULT RemoteInvoke ([in] DISPID dispIdMember,[in] REFIID riid,[in] LCID lcid,[in] DWORD dwFlags,[in] DISPPARAMS *pDispParams,[out] VARIANT *pVarResult,[out] EXCEPINFO *pExcepInfo,[out] UINT *pArgErr,[in] UINT cVarRef,[in, size_is (cVarRef)] UINT *rgVarRefIdx,[in, out, size_is (cVarRef)] VARIANTARG *rgVarRef);
|
---|
| 731 | cpp_quote("")
|
---|
| 732 | const DISPID DISPID_UNKNOWN = -1;
|
---|
| 733 | const DISPID DISPID_VALUE = 0;
|
---|
| 734 | const DISPID DISPID_PROPERTYPUT = -3;
|
---|
| 735 | const DISPID DISPID_NEWENUM = -4;
|
---|
| 736 | const DISPID DISPID_EVALUATE = -5;
|
---|
| 737 | const DISPID DISPID_CONSTRUCTOR = -6;
|
---|
| 738 | const DISPID DISPID_DESTRUCTOR = -7;
|
---|
| 739 | const DISPID DISPID_COLLECT = -8;
|
---|
| 740 | cpp_quote("")
|
---|
| 741 | }
|
---|
| 742 |
|
---|
| 743 | cpp_quote("")
|
---|
| 744 | [object, uuid (00020404-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 745 | interface IEnumVARIANT : IUnknown {
|
---|
| 746 | typedef [unique] IEnumVARIANT *LPENUMVARIANT;
|
---|
| 747 | cpp_quote("")
|
---|
| 748 | [local] HRESULT Next ([in] ULONG celt,[out, size_is (celt), length_is (*pCeltFetched)] VARIANT *rgVar,[out] ULONG *pCeltFetched);
|
---|
| 749 | [call_as (Next)] HRESULT RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pCeltFetched)] VARIANT *rgVar,[out] ULONG *pCeltFetched);
|
---|
| 750 | HRESULT Skip ([in] ULONG celt);
|
---|
| 751 | HRESULT Reset ();
|
---|
| 752 | HRESULT Clone ([out] IEnumVARIANT **ppEnum);
|
---|
| 753 | }
|
---|
| 754 |
|
---|
| 755 | cpp_quote("")
|
---|
| 756 | [object, uuid (00020403-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 757 | interface ITypeComp : IUnknown {
|
---|
| 758 | typedef [unique] ITypeComp *LPTYPECOMP;
|
---|
| 759 | cpp_quote("")
|
---|
| 760 | typedef [v1_enum] enum tagDESCKIND {
|
---|
| 761 | DESCKIND_NONE = 0,
|
---|
| 762 | DESCKIND_FUNCDESC,
|
---|
| 763 | DESCKIND_VARDESC,
|
---|
| 764 | DESCKIND_TYPECOMP,
|
---|
| 765 | DESCKIND_IMPLICITAPPOBJ,
|
---|
| 766 | DESCKIND_MAX
|
---|
| 767 | } DESCKIND;
|
---|
| 768 | cpp_quote("")
|
---|
| 769 | typedef union tagBINDPTR {
|
---|
| 770 | FUNCDESC *lpfuncdesc;
|
---|
| 771 | VARDESC *lpvardesc;
|
---|
| 772 | ITypeComp *lptcomp;
|
---|
| 773 | } BINDPTR,*LPBINDPTR;
|
---|
| 774 | cpp_quote("")
|
---|
| 775 | [local] HRESULT Bind ([in] LPOLESTR szName,[in] ULONG lHashVal,[in] WORD wFlags,[out] ITypeInfo **ppTInfo,[out] DESCKIND *pDescKind,[out] BINDPTR *pBindPtr);
|
---|
| 776 | [call_as (Bind)] HRESULT RemoteBind ([in] LPOLESTR szName,[in] ULONG lHashVal,[in] WORD wFlags,[out] ITypeInfo **ppTInfo,[out] DESCKIND *pDescKind,[out] LPFUNCDESC *ppFuncDesc,[out] LPVARDESC *ppVarDesc,[out] ITypeComp **ppTypeComp,[out] CLEANLOCALSTORAGE *pDummy);
|
---|
| 777 | [local] HRESULT BindType ([in] LPOLESTR szName,[in] ULONG lHashVal,[out] ITypeInfo **ppTInfo,[out] ITypeComp **ppTComp);
|
---|
| 778 | [call_as (BindType)] HRESULT RemoteBindType ([in] LPOLESTR szName,[in] ULONG lHashVal,[out] ITypeInfo **ppTInfo);
|
---|
| 779 | }
|
---|
| 780 | cpp_quote("#endif")
|
---|
| 781 | cpp_quote("")
|
---|
| 782 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
|
---|
| 783 | [object, uuid (00020401-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 784 | interface ITypeInfo : IUnknown {
|
---|
| 785 | typedef [unique] ITypeInfo *LPTYPEINFO;
|
---|
| 786 | cpp_quote("")
|
---|
| 787 | [local] HRESULT GetTypeAttr ([out] TYPEATTR **ppTypeAttr);
|
---|
| 788 | [call_as (GetTypeAttr)] HRESULT RemoteGetTypeAttr ([out] LPTYPEATTR *ppTypeAttr,[out] CLEANLOCALSTORAGE *pDummy);
|
---|
| 789 | HRESULT GetTypeComp ([out] ITypeComp **ppTComp);
|
---|
| 790 | [local] HRESULT GetFuncDesc ([in] UINT index,[out] FUNCDESC **ppFuncDesc);
|
---|
| 791 | [call_as (GetFuncDesc)] HRESULT RemoteGetFuncDesc ([in] UINT index,[out] LPFUNCDESC *ppFuncDesc,[out] CLEANLOCALSTORAGE *pDummy);
|
---|
| 792 | [local] HRESULT GetVarDesc ([in] UINT index,[out] VARDESC **ppVarDesc);
|
---|
| 793 | [call_as (GetVarDesc)] HRESULT RemoteGetVarDesc ([in] UINT index,[out] LPVARDESC *ppVarDesc,[out] CLEANLOCALSTORAGE *pDummy);
|
---|
| 794 | [local] HRESULT GetNames ([in] MEMBERID memid,[out, size_is (cMaxNames), length_is (*pcNames)] BSTR *rgBstrNames,[in] UINT cMaxNames,[out] UINT *pcNames);
|
---|
| 795 | [call_as (GetNames)] HRESULT RemoteGetNames ([in] MEMBERID memid,[out, size_is (cMaxNames), length_is (*pcNames)] BSTR *rgBstrNames,[in] UINT cMaxNames,[out] UINT *pcNames);
|
---|
| 796 | HRESULT GetRefTypeOfImplType ([in] UINT index,[out] HREFTYPE *pRefType);
|
---|
| 797 | HRESULT GetImplTypeFlags ([in] UINT index,[out] INT *pImplTypeFlags);
|
---|
| 798 | [local] HRESULT GetIDsOfNames ([in, size_is (cNames)] LPOLESTR *rgszNames,[in] UINT cNames,[out, size_is (cNames)] MEMBERID *pMemId);
|
---|
| 799 | [call_as (GetIDsOfNames)] HRESULT LocalGetIDsOfNames (void);
|
---|
| 800 | [local] HRESULT Invoke ([in] PVOID pvInstance,[in] MEMBERID memid,[in] WORD wFlags,[in, out] DISPPARAMS *pDispParams,[out] VARIANT *pVarResult,[out] EXCEPINFO *pExcepInfo,[out] UINT *puArgErr);
|
---|
| 801 | [call_as (Invoke)] HRESULT LocalInvoke (void);
|
---|
| 802 | [local] HRESULT GetDocumentation ([in] MEMBERID memid,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
|
---|
| 803 | [call_as (GetDocumentation)] HRESULT RemoteGetDocumentation ([in] MEMBERID memid,[in] DWORD refPtrFlags,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
|
---|
| 804 | [local]
|
---|
| 805 | HRESULT GetDllEntry ([in] MEMBERID memid,[in] INVOKEKIND invKind,[out] BSTR *pBstrDllName,[out] BSTR *pBstrName,[out] WORD *pwOrdinal);
|
---|
| 806 | [call_as (GetDllEntry)]
|
---|
| 807 | HRESULT RemoteGetDllEntry ([in] MEMBERID memid,[in] INVOKEKIND invKind,[in] DWORD refPtrFlags,[out] BSTR *pBstrDllName,[out] BSTR *pBstrName,[out] WORD *pwOrdinal);
|
---|
| 808 | HRESULT GetRefTypeInfo ([in] HREFTYPE hRefType,[out] ITypeInfo **ppTInfo);
|
---|
| 809 | [local] HRESULT AddressOfMember ([in] MEMBERID memid,[in] INVOKEKIND invKind,[out] PVOID *ppv);
|
---|
| 810 | [call_as (AddressOfMember)] HRESULT LocalAddressOfMember (void);
|
---|
| 811 | [local] HRESULT CreateInstance ([in] IUnknown *pUnkOuter,[in] REFIID riid,[out, iid_is (riid)] PVOID *ppvObj);
|
---|
| 812 | [call_as (CreateInstance)] HRESULT RemoteCreateInstance ([in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObj);
|
---|
| 813 | HRESULT GetMops ([in] MEMBERID memid,[out] BSTR *pBstrMops);
|
---|
| 814 | [local] HRESULT GetContainingTypeLib ([out] ITypeLib **ppTLib,[out] UINT *pIndex);
|
---|
| 815 | [call_as (GetContainingTypeLib)] HRESULT RemoteGetContainingTypeLib ([out] ITypeLib **ppTLib,[out] UINT *pIndex);
|
---|
| 816 | [local] void ReleaseTypeAttr ([in] TYPEATTR *pTypeAttr);
|
---|
| 817 | [call_as (ReleaseTypeAttr)] HRESULT LocalReleaseTypeAttr (void);
|
---|
| 818 | [local] void ReleaseFuncDesc ([in] FUNCDESC *pFuncDesc);
|
---|
| 819 | [call_as (ReleaseFuncDesc)] HRESULT LocalReleaseFuncDesc (void);
|
---|
| 820 | [local] void ReleaseVarDesc ([in] VARDESC *pVarDesc);
|
---|
| 821 | [call_as (ReleaseVarDesc)] HRESULT LocalReleaseVarDesc (void);
|
---|
| 822 | }
|
---|
| 823 |
|
---|
| 824 | cpp_quote("")
|
---|
| 825 | [object, uuid (00020412-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 826 | interface ITypeInfo2 : ITypeInfo {
|
---|
| 827 | typedef [unique] ITypeInfo2 *LPTYPEINFO2;
|
---|
| 828 | cpp_quote("")
|
---|
| 829 | HRESULT GetTypeKind ([out] TYPEKIND *pTypeKind);
|
---|
| 830 | HRESULT GetTypeFlags ([out] ULONG *pTypeFlags);
|
---|
| 831 | HRESULT GetFuncIndexOfMemId ([in] MEMBERID memid,[in] INVOKEKIND invKind,[out] UINT *pFuncIndex);
|
---|
| 832 | HRESULT GetVarIndexOfMemId ([in] MEMBERID memid,[out] UINT *pVarIndex);
|
---|
| 833 | HRESULT GetCustData ([in] REFGUID guid,[out] VARIANT *pVarVal);
|
---|
| 834 | HRESULT GetFuncCustData ([in] UINT index,[in] REFGUID guid,[out] VARIANT *pVarVal);
|
---|
| 835 | HRESULT GetParamCustData ([in] UINT indexFunc,[in] UINT indexParam,[in] REFGUID guid,[out] VARIANT *pVarVal);
|
---|
| 836 | HRESULT GetVarCustData ([in] UINT index,[in] REFGUID guid,[out] VARIANT *pVarVal);
|
---|
| 837 | HRESULT GetImplTypeCustData ([in] UINT index,[in] REFGUID guid,[out] VARIANT *pVarVal);
|
---|
| 838 | [local] HRESULT GetDocumentation2 ([in] MEMBERID memid,[in] LCID lcid,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
|
---|
| 839 | [call_as (GetDocumentation2)] HRESULT RemoteGetDocumentation2 ([in] MEMBERID memid,[in] LCID lcid,[in] DWORD refPtrFlags,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
|
---|
| 840 | HRESULT GetAllCustData ([out] CUSTDATA *pCustData);
|
---|
| 841 | HRESULT GetAllFuncCustData ([in] UINT index,[out] CUSTDATA *pCustData);
|
---|
| 842 | HRESULT GetAllParamCustData ([in] UINT indexFunc,[in] UINT indexParam,[out] CUSTDATA *pCustData);
|
---|
| 843 | HRESULT GetAllVarCustData ([in] UINT index,[out] CUSTDATA *pCustData);
|
---|
| 844 | HRESULT GetAllImplTypeCustData ([in] UINT index,[out] CUSTDATA *pCustData);
|
---|
| 845 | }
|
---|
| 846 | cpp_quote("#endif")
|
---|
| 847 | cpp_quote("")
|
---|
| 848 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
|
---|
| 849 | [object, uuid (00020402-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 850 | interface ITypeLib : IUnknown {
|
---|
| 851 | typedef [v1_enum] enum tagSYSKIND {
|
---|
| 852 | SYS_WIN16 = 0,
|
---|
| 853 | SYS_WIN32,
|
---|
| 854 | SYS_MAC,
|
---|
| 855 | SYS_WIN64
|
---|
| 856 | } SYSKIND;
|
---|
| 857 | cpp_quote("")
|
---|
| 858 | typedef [v1_enum] enum tagLIBFLAGS {
|
---|
| 859 | LIBFLAG_FRESTRICTED = 0x01,
|
---|
| 860 | LIBFLAG_FCONTROL = 0x02,
|
---|
| 861 | LIBFLAG_FHIDDEN = 0x04,
|
---|
| 862 | LIBFLAG_FHASDISKIMAGE = 0x08
|
---|
| 863 | } LIBFLAGS;
|
---|
| 864 | cpp_quote("")
|
---|
| 865 | typedef [unique] ITypeLib *LPTYPELIB;
|
---|
| 866 | cpp_quote("")
|
---|
| 867 | typedef struct tagTLIBATTR {
|
---|
| 868 | GUID guid;
|
---|
| 869 | LCID lcid;
|
---|
| 870 | SYSKIND syskind;
|
---|
| 871 | WORD wMajorVerNum;
|
---|
| 872 | WORD wMinorVerNum;
|
---|
| 873 | WORD wLibFlags;
|
---|
| 874 | } TLIBATTR,*LPTLIBATTR;
|
---|
| 875 | cpp_quote("")
|
---|
| 876 | [local] UINT GetTypeInfoCount (void);
|
---|
| 877 | [call_as (GetTypeInfoCount)] HRESULT RemoteGetTypeInfoCount ([out] UINT *pcTInfo);
|
---|
| 878 | HRESULT GetTypeInfo ([in] UINT index,[out] ITypeInfo **ppTInfo);
|
---|
| 879 | HRESULT GetTypeInfoType ([in] UINT index,[out] TYPEKIND *pTKind);
|
---|
| 880 | HRESULT GetTypeInfoOfGuid ([in] REFGUID guid,[out] ITypeInfo **ppTinfo);
|
---|
| 881 | [local] HRESULT GetLibAttr ([out] TLIBATTR **ppTLibAttr);
|
---|
| 882 | [call_as (GetLibAttr)] HRESULT RemoteGetLibAttr ([out] LPTLIBATTR *ppTLibAttr,[out] CLEANLOCALSTORAGE *pDummy);
|
---|
| 883 | HRESULT GetTypeComp ([out] ITypeComp **ppTComp);
|
---|
| 884 | [local] HRESULT GetDocumentation ([in] INT index,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
|
---|
| 885 | [call_as (GetDocumentation)] HRESULT RemoteGetDocumentation ([in] INT index,[in] DWORD refPtrFlags,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
|
---|
| 886 | [local] HRESULT IsName ([in, out] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out] BOOL *pfName);
|
---|
| 887 | [call_as (IsName)] HRESULT RemoteIsName ([in] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out] BOOL *pfName,[out] BSTR *pBstrLibName);
|
---|
| 888 | [local] HRESULT FindName ([in, out] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out, size_is (*pcFound), length_is (*pcFound)] ITypeInfo **ppTInfo,[out, size_is (*pcFound), length_is (*pcFound)] MEMBERID *rgMemId,[in, out] USHORT *pcFound);
|
---|
| 889 | [call_as (FindName)] HRESULT RemoteFindName ([in] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out, size_is (*pcFound), length_is (*pcFound)] ITypeInfo **ppTInfo,[out, size_is (*pcFound), length_is (*pcFound)] MEMBERID *rgMemId,[in, out] USHORT *pcFound,[out] BSTR *pBstrLibName);
|
---|
| 890 | [local] void ReleaseTLibAttr ([in] TLIBATTR *pTLibAttr);
|
---|
| 891 | [call_as (ReleaseTLibAttr)] HRESULT LocalReleaseTLibAttr (void);
|
---|
| 892 | }
|
---|
| 893 | cpp_quote("#endif")
|
---|
| 894 | cpp_quote("")
|
---|
| 895 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
|
---|
| 896 | [object, uuid (00020411-0000-0000-C000-000000000046), pointer_default (unique)]
|
---|
| 897 | interface ITypeLib2 : ITypeLib {
|
---|
| 898 | typedef [unique] ITypeLib2 *LPTYPELIB2;
|
---|
| 899 | cpp_quote("")
|
---|
| 900 | HRESULT GetCustData ([in] REFGUID guid,[out] VARIANT *pVarVal);
|
---|
| 901 | [local] HRESULT GetLibStatistics ([out] ULONG *pcUniqueNames,[out] ULONG *pcchUniqueNames);
|
---|
| 902 | [call_as (GetLibStatistics)] HRESULT RemoteGetLibStatistics ([out] ULONG *pcUniqueNames,[out] ULONG *pcchUniqueNames);
|
---|
| 903 | [local] HRESULT GetDocumentation2 ([in] INT index,[in] LCID lcid,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
|
---|
| 904 | [call_as (GetDocumentation2)] HRESULT RemoteGetDocumentation2 ([in] INT index,[in] LCID lcid,[in] DWORD refPtrFlags,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
|
---|
| 905 | HRESULT GetAllCustData ([out] CUSTDATA *pCustData);
|
---|
| 906 | }
|
---|
| 907 |
|
---|
| 908 | cpp_quote("")
|
---|
| 909 | [object, uuid (00020410-0000-0000-C000-000000000046), pointer_default (unique), local]
|
---|
| 910 | interface ITypeChangeEvents: IUnknown {
|
---|
| 911 | typedef [unique] ITypeChangeEvents *LPTYPECHANGEEVENTS;
|
---|
| 912 | cpp_quote("")
|
---|
| 913 | typedef enum tagCHANGEKIND {
|
---|
| 914 | CHANGEKIND_ADDMEMBER,
|
---|
| 915 | CHANGEKIND_DELETEMEMBER,
|
---|
| 916 | CHANGEKIND_SETNAMES,
|
---|
| 917 | CHANGEKIND_SETDOCUMENTATION,
|
---|
| 918 | CHANGEKIND_GENERAL,
|
---|
| 919 | CHANGEKIND_INVALIDATE,
|
---|
| 920 | CHANGEKIND_CHANGEFAILED,
|
---|
| 921 | CHANGEKIND_MAX
|
---|
| 922 | } CHANGEKIND;
|
---|
| 923 | cpp_quote("")
|
---|
| 924 | HRESULT RequestTypeChange ([in] CHANGEKIND changeKind,[in] ITypeInfo *pTInfoBefore,[in] LPOLESTR pStrName,[out] INT *pfCancel);
|
---|
| 925 | HRESULT AfterTypeChange ([in] CHANGEKIND changeKind,[in] ITypeInfo *pTInfoAfter,[in] LPOLESTR pStrName);
|
---|
| 926 | }
|
---|
| 927 |
|
---|
| 928 | cpp_quote("")
|
---|
| 929 | [object, uuid (1cf2b120-547d-101b-8e65-08002b2bd119), pointer_default (unique)]
|
---|
| 930 | interface IErrorInfo: IUnknown {
|
---|
| 931 | typedef [unique] IErrorInfo *LPERRORINFO;
|
---|
| 932 | cpp_quote("")
|
---|
| 933 | HRESULT GetGUID ([out] GUID *pGUID);
|
---|
| 934 | HRESULT GetSource ([out] BSTR *pBstrSource);
|
---|
| 935 | HRESULT GetDescription ([out] BSTR *pBstrDescription);
|
---|
| 936 | HRESULT GetHelpFile ([out] BSTR *pBstrHelpFile);
|
---|
| 937 | HRESULT GetHelpContext ([out] DWORD *pdwHelpContext);
|
---|
| 938 | }
|
---|
| 939 |
|
---|
| 940 | cpp_quote("")
|
---|
| 941 | [object, uuid (22f03340-547d-101b-8e65-08002b2bd119), pointer_default (unique)]
|
---|
| 942 | interface ICreateErrorInfo: IUnknown {
|
---|
| 943 | typedef [unique] ICreateErrorInfo *LPCREATEERRORINFO;
|
---|
| 944 | cpp_quote("")
|
---|
| 945 | HRESULT SetGUID ([in] REFGUID rguid);
|
---|
| 946 | HRESULT SetSource ([in] LPOLESTR szSource);
|
---|
| 947 | HRESULT SetDescription ([in] LPOLESTR szDescription);
|
---|
| 948 | HRESULT SetHelpFile ([in] LPOLESTR szHelpFile);
|
---|
| 949 | HRESULT SetHelpContext ([in] DWORD dwHelpContext);
|
---|
| 950 | }
|
---|
| 951 |
|
---|
| 952 | cpp_quote("")
|
---|
| 953 | [object, uuid (DF0B3D60-548f-101b-8e65-08002b2bd119), pointer_default (unique)]
|
---|
| 954 | interface ISupportErrorInfo: IUnknown {
|
---|
| 955 | typedef [unique] ISupportErrorInfo *LPSUPPORTERRORINFO;
|
---|
| 956 | cpp_quote("")
|
---|
| 957 | HRESULT InterfaceSupportsErrorInfo ([in] REFIID riid);
|
---|
| 958 | }
|
---|
| 959 |
|
---|
| 960 | cpp_quote("")
|
---|
| 961 | [object, uuid (0000002e-0000-0000-C000-000000000046)]
|
---|
| 962 | interface ITypeFactory : IUnknown {
|
---|
| 963 | HRESULT CreateFromTypeInfo ([in] ITypeInfo *pTypeInfo,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppv);
|
---|
| 964 | }
|
---|
| 965 |
|
---|
| 966 | cpp_quote("")
|
---|
| 967 | [local, object, uuid (0000002d-0000-0000-C000-000000000046)]
|
---|
| 968 | interface ITypeMarshal : IUnknown {
|
---|
| 969 | HRESULT Size ([in] PVOID pvType,[in] DWORD dwDestContext,[in] PVOID pvDestContext,[out] ULONG *pSize);
|
---|
| 970 | HRESULT Marshal ([in] PVOID pvType,[in] DWORD dwDestContext,[in] PVOID pvDestContext,[in] ULONG cbBufferLength,[out] BYTE *pBuffer,[out] ULONG *pcbWritten);
|
---|
| 971 | HRESULT Unmarshal ([out] PVOID pvType,[in] DWORD dwFlags,[in] ULONG cbBufferLength,[in] BYTE *pBuffer,[out] ULONG *pcbRead);
|
---|
| 972 | HRESULT Free ([in] PVOID pvType);
|
---|
| 973 | }
|
---|
| 974 |
|
---|
| 975 | cpp_quote("")
|
---|
| 976 | [local, object, uuid (0000002f-0000-0000-C000-000000000046)]
|
---|
| 977 | interface IRecordInfo: IUnknown {
|
---|
| 978 | typedef [unique] IRecordInfo *LPRECORDINFO;
|
---|
| 979 | cpp_quote("")
|
---|
| 980 | HRESULT RecordInit ([out] PVOID pvNew);
|
---|
| 981 | HRESULT RecordClear ([in] PVOID pvExisting);
|
---|
| 982 | HRESULT RecordCopy ([in] PVOID pvExisting,[out] PVOID pvNew);
|
---|
| 983 | HRESULT GetGuid ([out] GUID *pguid);
|
---|
| 984 | HRESULT GetName ([out] BSTR *pbstrName);
|
---|
| 985 | HRESULT GetSize ([out] ULONG *pcbSize);
|
---|
| 986 | HRESULT GetTypeInfo ([out] ITypeInfo **ppTypeInfo);
|
---|
| 987 | HRESULT GetField ([in] PVOID pvData,[in] LPCOLESTR szFieldName,[out] VARIANT *pvarField);
|
---|
| 988 | HRESULT GetFieldNoCopy ([in] PVOID pvData,[in] LPCOLESTR szFieldName,[out] VARIANT *pvarField,[out] PVOID *ppvDataCArray);
|
---|
| 989 | HRESULT PutField ([in] ULONG wFlags,[in, out] PVOID pvData,[in] LPCOLESTR szFieldName,[in] VARIANT *pvarField);
|
---|
| 990 | HRESULT PutFieldNoCopy ([in] ULONG wFlags,[in, out] PVOID pvData,[in] LPCOLESTR szFieldName,[in] VARIANT *pvarField);
|
---|
| 991 | HRESULT GetFieldNames ([in, out] ULONG *pcNames,[out, size_is (*pcNames), length_is (*pcNames)] BSTR *rgBstrNames);
|
---|
| 992 | BOOL IsMatchingType ([in] IRecordInfo *pRecordInfo);
|
---|
| 993 | PVOID RecordCreate ();
|
---|
| 994 | HRESULT RecordCreateCopy ([in] PVOID pvSource,[out] PVOID *ppvDest);
|
---|
| 995 | HRESULT RecordDestroy ([in] PVOID pvRecord);
|
---|
| 996 | }
|
---|
| 997 |
|
---|
| 998 | cpp_quote("")
|
---|
| 999 | [object, uuid (3127ca40-446e-11ce-8135-00aa004bb851), pointer_default (unique)]
|
---|
| 1000 | interface IErrorLog : IUnknown {
|
---|
| 1001 | typedef IErrorLog *LPERRORLOG;
|
---|
| 1002 | cpp_quote("")
|
---|
| 1003 | HRESULT AddError ([in] LPCOLESTR pszPropName,[in] EXCEPINFO *pExcepInfo);
|
---|
| 1004 | }
|
---|
| 1005 |
|
---|
| 1006 | cpp_quote("")
|
---|
| 1007 | [object, uuid (55272a00-42cb-11ce-8135-00aa004bb851), pointer_default (unique)]
|
---|
| 1008 | interface IPropertyBag : IUnknown {
|
---|
| 1009 | typedef IPropertyBag *LPPROPERTYBAG;
|
---|
| 1010 | cpp_quote("")
|
---|
| 1011 | [local] HRESULT Read ([in] LPCOLESTR pszPropName,[in, out] VARIANT *pVar,[in, unique] IErrorLog *pErrorLog);
|
---|
| 1012 | [call_as (Read)] HRESULT RemoteRead ([in] LPCOLESTR pszPropName,[out] VARIANT *pVar,[in, unique] IErrorLog *pErrorLog,[in] DWORD varType,[in] IUnknown *pUnkObj);
|
---|
| 1013 | HRESULT Write ([in] LPCOLESTR pszPropName,[in] VARIANT *pVar);
|
---|
| 1014 | }
|
---|
| 1015 | cpp_quote("#endif")
|
---|