1 /*** Autogenerated by WIDL 1.6 from include/oaidl.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __oaidl_h__ 16 #define __oaidl_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __ICreateTypeInfo_FWD_DEFINED__ 21 #define __ICreateTypeInfo_FWD_DEFINED__ 22 typedef interface ICreateTypeInfo ICreateTypeInfo; 23 #endif 24 25 #ifndef __ICreateTypeInfo2_FWD_DEFINED__ 26 #define __ICreateTypeInfo2_FWD_DEFINED__ 27 typedef interface ICreateTypeInfo2 ICreateTypeInfo2; 28 #endif 29 30 #ifndef __ICreateTypeLib_FWD_DEFINED__ 31 #define __ICreateTypeLib_FWD_DEFINED__ 32 typedef interface ICreateTypeLib ICreateTypeLib; 33 #endif 34 35 #ifndef __ICreateTypeLib2_FWD_DEFINED__ 36 #define __ICreateTypeLib2_FWD_DEFINED__ 37 typedef interface ICreateTypeLib2 ICreateTypeLib2; 38 #endif 39 40 #ifndef __IDispatch_FWD_DEFINED__ 41 #define __IDispatch_FWD_DEFINED__ 42 typedef interface IDispatch IDispatch; 43 #endif 44 45 #ifndef __IEnumVARIANT_FWD_DEFINED__ 46 #define __IEnumVARIANT_FWD_DEFINED__ 47 typedef interface IEnumVARIANT IEnumVARIANT; 48 #endif 49 50 #ifndef __ITypeComp_FWD_DEFINED__ 51 #define __ITypeComp_FWD_DEFINED__ 52 typedef interface ITypeComp ITypeComp; 53 #endif 54 55 #ifndef __ITypeInfo_FWD_DEFINED__ 56 #define __ITypeInfo_FWD_DEFINED__ 57 typedef interface ITypeInfo ITypeInfo; 58 #endif 59 60 #ifndef __ITypeInfo2_FWD_DEFINED__ 61 #define __ITypeInfo2_FWD_DEFINED__ 62 typedef interface ITypeInfo2 ITypeInfo2; 63 #endif 64 65 #ifndef __ITypeLib_FWD_DEFINED__ 66 #define __ITypeLib_FWD_DEFINED__ 67 typedef interface ITypeLib ITypeLib; 68 #endif 69 70 #ifndef __ITypeLib2_FWD_DEFINED__ 71 #define __ITypeLib2_FWD_DEFINED__ 72 typedef interface ITypeLib2 ITypeLib2; 73 #endif 74 75 #ifndef __ITypeChangeEvents_FWD_DEFINED__ 76 #define __ITypeChangeEvents_FWD_DEFINED__ 77 typedef interface ITypeChangeEvents ITypeChangeEvents; 78 #endif 79 80 #ifndef __IErrorInfo_FWD_DEFINED__ 81 #define __IErrorInfo_FWD_DEFINED__ 82 typedef interface IErrorInfo IErrorInfo; 83 #endif 84 85 #ifndef __ICreateErrorInfo_FWD_DEFINED__ 86 #define __ICreateErrorInfo_FWD_DEFINED__ 87 typedef interface ICreateErrorInfo ICreateErrorInfo; 88 #endif 89 90 #ifndef __ISupportErrorInfo_FWD_DEFINED__ 91 #define __ISupportErrorInfo_FWD_DEFINED__ 92 typedef interface ISupportErrorInfo ISupportErrorInfo; 93 #endif 94 95 #ifndef __ITypeFactory_FWD_DEFINED__ 96 #define __ITypeFactory_FWD_DEFINED__ 97 typedef interface ITypeFactory ITypeFactory; 98 #endif 99 100 #ifndef __ITypeMarshal_FWD_DEFINED__ 101 #define __ITypeMarshal_FWD_DEFINED__ 102 typedef interface ITypeMarshal ITypeMarshal; 103 #endif 104 105 #ifndef __IRecordInfo_FWD_DEFINED__ 106 #define __IRecordInfo_FWD_DEFINED__ 107 typedef interface IRecordInfo IRecordInfo; 108 #endif 109 110 #ifndef __IErrorLog_FWD_DEFINED__ 111 #define __IErrorLog_FWD_DEFINED__ 112 typedef interface IErrorLog IErrorLog; 113 #endif 114 115 #ifndef __IPropertyBag_FWD_DEFINED__ 116 #define __IPropertyBag_FWD_DEFINED__ 117 typedef interface IPropertyBag IPropertyBag; 118 #endif 119 120 /* Headers for imported files */ 121 122 #include <objidl.h> 123 124 #ifdef __cplusplus 125 extern "C" { 126 #endif 127 128 /** 129 * This file is part of the mingw-w64 runtime package. 130 * No warranty is given; refer to the file DISCLAIMER within this package. 131 */ 132 133 #include <winapifamily.h> 134 135 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 136 #ifndef __ICreateTypeInfo_FWD_DEFINED__ 137 #define __ICreateTypeInfo_FWD_DEFINED__ 138 typedef interface ICreateTypeInfo ICreateTypeInfo; 139 #endif 140 141 #ifndef __ICreateTypeInfo2_FWD_DEFINED__ 142 #define __ICreateTypeInfo2_FWD_DEFINED__ 143 typedef interface ICreateTypeInfo2 ICreateTypeInfo2; 144 #endif 145 146 #ifndef __ICreateTypeLib_FWD_DEFINED__ 147 #define __ICreateTypeLib_FWD_DEFINED__ 148 typedef interface ICreateTypeLib ICreateTypeLib; 149 #endif 150 151 #ifndef __ICreateTypeLib2_FWD_DEFINED__ 152 #define __ICreateTypeLib2_FWD_DEFINED__ 153 typedef interface ICreateTypeLib2 ICreateTypeLib2; 154 #endif 155 156 #endif 157 158 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 159 #ifndef __IDispatch_FWD_DEFINED__ 160 #define __IDispatch_FWD_DEFINED__ 161 typedef interface IDispatch IDispatch; 162 #endif 163 164 #ifndef __IEnumVARIANT_FWD_DEFINED__ 165 #define __IEnumVARIANT_FWD_DEFINED__ 166 typedef interface IEnumVARIANT IEnumVARIANT; 167 #endif 168 169 #ifndef __ITypeComp_FWD_DEFINED__ 170 #define __ITypeComp_FWD_DEFINED__ 171 typedef interface ITypeComp ITypeComp; 172 #endif 173 174 #endif 175 176 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 177 #ifndef __ITypeInfo_FWD_DEFINED__ 178 #define __ITypeInfo_FWD_DEFINED__ 179 typedef interface ITypeInfo ITypeInfo; 180 #endif 181 182 #ifndef __ITypeInfo2_FWD_DEFINED__ 183 #define __ITypeInfo2_FWD_DEFINED__ 184 typedef interface ITypeInfo2 ITypeInfo2; 185 #endif 186 187 #ifndef __ITypeLib_FWD_DEFINED__ 188 #define __ITypeLib_FWD_DEFINED__ 189 typedef interface ITypeLib ITypeLib; 190 #endif 191 192 #ifndef __ITypeLib2_FWD_DEFINED__ 193 #define __ITypeLib2_FWD_DEFINED__ 194 typedef interface ITypeLib2 ITypeLib2; 195 #endif 196 197 #ifndef __ITypeChangeEvents_FWD_DEFINED__ 198 #define __ITypeChangeEvents_FWD_DEFINED__ 199 typedef interface ITypeChangeEvents ITypeChangeEvents; 200 #endif 201 202 #ifndef __IErrorInfo_FWD_DEFINED__ 203 #define __IErrorInfo_FWD_DEFINED__ 204 typedef interface IErrorInfo IErrorInfo; 205 #endif 206 207 #ifndef __ICreateErrorInfo_FWD_DEFINED__ 208 #define __ICreateErrorInfo_FWD_DEFINED__ 209 typedef interface ICreateErrorInfo ICreateErrorInfo; 210 #endif 211 212 #ifndef __ISupportErrorInfo_FWD_DEFINED__ 213 #define __ISupportErrorInfo_FWD_DEFINED__ 214 typedef interface ISupportErrorInfo ISupportErrorInfo; 215 #endif 216 217 #ifndef __ITypeFactory_FWD_DEFINED__ 218 #define __ITypeFactory_FWD_DEFINED__ 219 typedef interface ITypeFactory ITypeFactory; 220 #endif 221 222 #ifndef __ITypeMarshal_FWD_DEFINED__ 223 #define __ITypeMarshal_FWD_DEFINED__ 224 typedef interface ITypeMarshal ITypeMarshal; 225 #endif 226 227 #ifndef __IRecordInfo_FWD_DEFINED__ 228 #define __IRecordInfo_FWD_DEFINED__ 229 typedef interface IRecordInfo IRecordInfo; 230 #endif 231 232 #endif 233 234 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 235 /***************************************************************************** 236 * IOleAutomationTypes interface (v1.0) 237 */ 238 #ifndef __IOleAutomationTypes_INTERFACE_DEFINED__ 239 #define __IOleAutomationTypes_INTERFACE_DEFINED__ 240 241 extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_c_ifspec; 242 extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_s_ifspec; 243 typedef CY CURRENCY; 244 typedef struct tagSAFEARRAYBOUND { 245 ULONG cElements; 246 LONG lLbound; 247 } SAFEARRAYBOUND; 248 typedef struct tagSAFEARRAYBOUND *LPSAFEARRAYBOUND; 249 250 typedef struct _wireVARIANT *wireVARIANT; 251 typedef struct _wireBRECORD *wireBRECORD; 252 253 typedef struct _wireSAFEARR_BSTR { 254 ULONG Size; 255 wireBSTR *aBstr; 256 } SAFEARR_BSTR; 257 258 typedef struct _wireSAFEARR_UNKNOWN { 259 ULONG Size; 260 IUnknown **apUnknown; 261 } SAFEARR_UNKNOWN; 262 263 typedef struct _wireSAFEARR_DISPATCH { 264 ULONG Size; 265 IDispatch **apDispatch; 266 } SAFEARR_DISPATCH; 267 268 typedef struct _wireSAFEARR_VARIANT { 269 ULONG Size; 270 wireVARIANT *aVariant; 271 } SAFEARR_VARIANT; 272 273 typedef struct _wireSAFEARR_BRECORD { 274 ULONG Size; 275 wireBRECORD *aRecord; 276 } SAFEARR_BRECORD; 277 278 typedef struct _wireSAFEARR_HAVEIID { 279 ULONG Size; 280 IUnknown **apUnknown; 281 IID iid; 282 } SAFEARR_HAVEIID; 283 284 typedef enum tagSF_TYPE { 285 SF_ERROR = VT_ERROR, 286 SF_I1 = VT_I1, 287 SF_I2 = VT_I2, 288 SF_I4 = VT_I4, 289 SF_I8 = VT_I8, 290 SF_BSTR = VT_BSTR, 291 SF_UNKNOWN = VT_UNKNOWN, 292 SF_DISPATCH = VT_DISPATCH, 293 SF_VARIANT = VT_VARIANT, 294 SF_RECORD = VT_RECORD, 295 SF_HAVEIID = VT_UNKNOWN | VT_RESERVED 296 } SF_TYPE; 297 298 typedef struct _wireSAFEARRAY_UNION { 299 ULONG sfType; 300 union { 301 SAFEARR_BSTR BstrStr; 302 SAFEARR_UNKNOWN UnknownStr; 303 SAFEARR_DISPATCH DispatchStr; 304 SAFEARR_VARIANT VariantStr; 305 SAFEARR_BRECORD RecordStr; 306 SAFEARR_HAVEIID HaveIidStr; 307 BYTE_SIZEDARR ByteStr; 308 WORD_SIZEDARR WordStr; 309 DWORD_SIZEDARR LongStr; 310 HYPER_SIZEDARR HyperStr; 311 } u; 312 } SAFEARRAYUNION; 313 314 typedef struct _wireSAFEARRAY { 315 USHORT cDims; 316 USHORT fFeatures; 317 ULONG cbElements; 318 ULONG cLocks; 319 SAFEARRAYUNION uArrayStructs; 320 SAFEARRAYBOUND rgsabound[1]; 321 } *wireSAFEARRAY; 322 typedef wireSAFEARRAY *wirePSAFEARRAY; 323 324 typedef struct tagSAFEARRAY { 325 USHORT cDims; 326 USHORT fFeatures; 327 ULONG cbElements; 328 ULONG cLocks; 329 PVOID pvData; 330 SAFEARRAYBOUND rgsabound[1]; 331 } SAFEARRAY; 332 typedef SAFEARRAY *LPSAFEARRAY; 333 334 #define FADF_AUTO (0x1) 335 336 #define FADF_STATIC (0x2) 337 338 #define FADF_EMBEDDED (0x4) 339 340 #define FADF_FIXEDSIZE (0x10) 341 342 #define FADF_RECORD (0x20) 343 344 #define FADF_HAVEIID (0x40) 345 346 #define FADF_HAVEVARTYPE (0x80) 347 348 #define FADF_BSTR (0x100) 349 350 #define FADF_UNKNOWN (0x200) 351 352 #define FADF_DISPATCH (0x400) 353 354 #define FADF_VARIANT (0x800) 355 356 #define FADF_RESERVED (0xf008) 357 358 359 /* Kludge for 3.0 release to disable new default-behavior. 360 * For now we define _FORCENAMELESSUNION. For 4.0 this define 361 * will be removed. */ 362 #ifndef _FORCENAMELESSUNION 363 #define _FORCENAMELESSUNION 1 364 #endif 365 366 #if (__STDC__ && !defined(__cplusplus) && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION) || (defined (_MSC_VER) && !defined(_MSC_EXTENSIONS) && !defined(_FORCENAMELESSUNION)) 367 #define __VARIANT_NAME_1 n1 368 #define __VARIANT_NAME_2 n2 369 #define __VARIANT_NAME_3 n3 370 #define __VARIANT_NAME_4 brecVal 371 #else 372 #define __tagVARIANT 373 #define __VARIANT_NAME_1 374 #define __VARIANT_NAME_2 375 #define __VARIANT_NAME_3 376 #define __tagBRECORD 377 #define __VARIANT_NAME_4 378 #endif 379 380 typedef struct tagVARIANT VARIANT; 381 382 struct tagVARIANT { 383 union { 384 struct __tagVARIANT { 385 VARTYPE vt; 386 WORD wReserved1; 387 WORD wReserved2; 388 WORD wReserved3; 389 union { 390 LONGLONG llVal; 391 LONG lVal; 392 BYTE bVal; 393 SHORT iVal; 394 FLOAT fltVal; 395 DOUBLE dblVal; 396 VARIANT_BOOL boolVal; 397 SCODE scode; 398 CY cyVal; 399 DATE date; 400 BSTR bstrVal; 401 IUnknown *punkVal; 402 IDispatch *pdispVal; 403 SAFEARRAY *parray; 404 BYTE *pbVal; 405 SHORT *piVal; 406 LONG *plVal; 407 LONGLONG *pllVal; 408 FLOAT *pfltVal; 409 DOUBLE *pdblVal; 410 VARIANT_BOOL *pboolVal; 411 SCODE *pscode; 412 CY *pcyVal; 413 DATE *pdate; 414 BSTR *pbstrVal; 415 IUnknown **ppunkVal; 416 IDispatch **ppdispVal; 417 SAFEARRAY **pparray; 418 VARIANT *pvarVal; 419 PVOID byref; 420 CHAR cVal; 421 USHORT uiVal; 422 ULONG ulVal; 423 ULONGLONG ullVal; 424 INT intVal; 425 UINT uintVal; 426 DECIMAL *pdecVal; 427 CHAR *pcVal; 428 USHORT *puiVal; 429 ULONG *pulVal; 430 ULONGLONG *pullVal; 431 INT *pintVal; 432 UINT *puintVal; 433 struct __tagBRECORD { 434 PVOID pvRecord; 435 IRecordInfo *pRecInfo; 436 } __VARIANT_NAME_4; 437 } __VARIANT_NAME_3; 438 } __VARIANT_NAME_2; 439 DECIMAL decVal; 440 } __VARIANT_NAME_1; 441 }; 442 443 444 typedef VARIANT *LPVARIANT; 445 typedef VARIANT VARIANTARG; 446 typedef VARIANT *LPVARIANTARG; 447 #if 0 448 typedef const VARIANT *REFVARIANT; 449 #else 450 451 #ifndef _REFVARIANT_DEFINED 452 #define _REFVARIANT_DEFINED 453 #ifdef __cplusplus 454 #define REFVARIANT const VARIANT & 455 #else 456 #define REFVARIANT const VARIANT * __MIDL_CONST 457 #endif 458 #endif 459 #endif 460 461 struct _wireBRECORD { 462 ULONG fFlags; 463 ULONG clSize; 464 IRecordInfo *pRecInfo; 465 byte *pRecord; 466 }; 467 468 469 struct _wireVARIANT { 470 DWORD clSize; 471 DWORD rpcReserved; 472 USHORT vt; 473 USHORT wReserved1; 474 USHORT wReserved2; 475 USHORT wReserved3; 476 __C89_NAMELESS union { 477 LONGLONG llVal; 478 LONG lVal; 479 BYTE bVal; 480 SHORT iVal; 481 FLOAT fltVal; 482 DOUBLE dblVal; 483 VARIANT_BOOL boolVal; 484 SCODE scode; 485 CY cyVal; 486 DATE date; 487 wireBSTR bstrVal; 488 IUnknown *punkVal; 489 IDispatch *pdispVal; 490 wirePSAFEARRAY parray; 491 wireBRECORD brecVal; 492 BYTE *pbVal; 493 SHORT *piVal; 494 LONG *plVal; 495 LONGLONG *pllVal; 496 FLOAT *pfltVal; 497 DOUBLE *pdblVal; 498 VARIANT_BOOL *pboolVal; 499 SCODE *pscode; 500 CY *pcyVal; 501 DATE *pdate; 502 wireBSTR *pbstrVal; 503 IUnknown **ppunkVal; 504 IDispatch **ppdispVal; 505 wirePSAFEARRAY *pparray; 506 wireVARIANT *pvarVal; 507 CHAR cVal; 508 USHORT uiVal; 509 ULONG ulVal; 510 ULONGLONG ullVal; 511 INT intVal; 512 UINT uintVal; 513 DECIMAL decVal; 514 DECIMAL *pdecVal; 515 CHAR *pcVal; 516 USHORT *puiVal; 517 ULONG *pulVal; 518 ULONGLONG *pullVal; 519 INT *pintVal; 520 UINT *puintVal; 521 } __C89_NAMELESSUNIONNAME; 522 }; 523 524 525 typedef LONG DISPID; 526 typedef DISPID MEMBERID; 527 typedef DWORD HREFTYPE; 528 typedef enum tagTYPEKIND { 529 TKIND_ENUM = 0, 530 TKIND_RECORD = 1, 531 TKIND_MODULE = 2, 532 TKIND_INTERFACE = 3, 533 TKIND_DISPATCH = 4, 534 TKIND_COCLASS = 5, 535 TKIND_ALIAS = 6, 536 TKIND_UNION = 7, 537 TKIND_MAX = 8 538 } TYPEKIND; 539 540 typedef struct tagTYPEDESC { 541 __C89_NAMELESS union { 542 struct tagTYPEDESC *lptdesc; 543 struct tagARRAYDESC *lpadesc; 544 HREFTYPE hreftype; 545 } __C89_NAMELESSUNIONNAME; 546 VARTYPE vt; 547 } TYPEDESC; 548 549 typedef struct tagARRAYDESC { 550 TYPEDESC tdescElem; 551 USHORT cDims; 552 SAFEARRAYBOUND rgbounds[1]; 553 } ARRAYDESC; 554 555 typedef struct tagPARAMDESCEX { 556 ULONG cBytes; 557 VARIANTARG varDefaultValue; 558 } PARAMDESCEX; 559 typedef struct tagPARAMDESCEX *LPPARAMDESCEX; 560 561 typedef struct tagPARAMDESC { 562 LPPARAMDESCEX pparamdescex; 563 USHORT wParamFlags; 564 } PARAMDESC; 565 typedef struct tagPARAMDESC *LPPARAMDESC; 566 567 #define PARAMFLAG_NONE (0x0) 568 569 #define PARAMFLAG_FIN (0x1) 570 571 #define PARAMFLAG_FOUT (0x2) 572 573 #define PARAMFLAG_FLCID (0x4) 574 575 #define PARAMFLAG_FRETVAL (0x8) 576 577 #define PARAMFLAG_FOPT (0x10) 578 579 #define PARAMFLAG_FHASDEFAULT (0x20) 580 581 #define PARAMFLAG_FHASCUSTDATA (0x40) 582 583 584 typedef struct tagIDLDESC { 585 ULONG_PTR dwReserved; 586 USHORT wIDLFlags; 587 } IDLDESC; 588 typedef struct tagIDLDESC *LPIDLDESC; 589 590 #define IDLFLAG_NONE (PARAMFLAG_NONE) 591 592 #define IDLFLAG_FIN (PARAMFLAG_FIN) 593 594 #define IDLFLAG_FOUT (PARAMFLAG_FOUT) 595 596 #define IDLFLAG_FLCID (PARAMFLAG_FLCID) 597 598 #define IDLFLAG_FRETVAL (PARAMFLAG_FRETVAL) 599 600 601 #if 0 602 typedef struct tagELEMDESC { 603 TYPEDESC tdesc; 604 PARAMDESC paramdesc; 605 } ELEMDESC; 606 #else 607 608 typedef struct tagELEMDESC { 609 TYPEDESC tdesc; 610 __C89_NAMELESS union { 611 IDLDESC idldesc; 612 PARAMDESC paramdesc; 613 } DUMMYUNIONNAME; 614 } ELEMDESC,*LPELEMDESC; 615 #endif 616 617 typedef struct tagTYPEATTR { 618 GUID guid; 619 LCID lcid; 620 DWORD dwReserved; 621 MEMBERID memidConstructor; 622 MEMBERID memidDestructor; 623 LPOLESTR lpstrSchema; 624 ULONG cbSizeInstance; 625 TYPEKIND typekind; 626 WORD cFuncs; 627 WORD cVars; 628 WORD cImplTypes; 629 WORD cbSizeVft; 630 WORD cbAlignment; 631 WORD wTypeFlags; 632 WORD wMajorVerNum; 633 WORD wMinorVerNum; 634 TYPEDESC tdescAlias; 635 IDLDESC idldescType; 636 } TYPEATTR; 637 typedef struct tagTYPEATTR *LPTYPEATTR; 638 639 typedef struct tagDISPPARAMS { 640 VARIANTARG *rgvarg; 641 DISPID *rgdispidNamedArgs; 642 UINT cArgs; 643 UINT cNamedArgs; 644 } DISPPARAMS; 645 646 #if 0 647 typedef struct tagEXCEPINFO { 648 WORD wCode; 649 WORD wReserved; 650 BSTR bstrSource; 651 BSTR bstrDescription; 652 BSTR bstrHelpFile; 653 DWORD dwHelpContext; 654 ULONG_PTR pvReserved; 655 ULONG_PTR pfnDeferredFillIn; 656 SCODE scode; 657 } EXCEPINFO; 658 #else 659 typedef struct tagEXCEPINFO { 660 WORD wCode; 661 WORD wReserved; 662 BSTR bstrSource; 663 BSTR bstrDescription; 664 BSTR bstrHelpFile; 665 DWORD dwHelpContext; 666 PVOID pvReserved; 667 HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *); 668 SCODE scode; 669 } EXCEPINFO, *LPEXCEPINFO; 670 #endif 671 672 typedef enum tagCALLCONV { 673 CC_FASTCALL = 0, 674 CC_CDECL = 1, 675 CC_MSCPASCAL = 2, 676 CC_PASCAL = CC_MSCPASCAL, 677 CC_MACPASCAL = 3, 678 CC_STDCALL = 4, 679 CC_FPFASTCALL = 5, 680 CC_SYSCALL = 6, 681 CC_MPWCDECL = 7, 682 CC_MPWPASCAL = 8, 683 CC_MAX = 9 684 } CALLCONV; 685 686 typedef enum tagFUNCKIND { 687 FUNC_VIRTUAL = 0, 688 FUNC_PUREVIRTUAL = 1, 689 FUNC_NONVIRTUAL = 2, 690 FUNC_STATIC = 3, 691 FUNC_DISPATCH = 4 692 } FUNCKIND; 693 694 typedef enum tagINVOKEKIND { 695 INVOKE_FUNC = 1, 696 INVOKE_PROPERTYGET = 2, 697 INVOKE_PROPERTYPUT = 4, 698 INVOKE_PROPERTYPUTREF = 8 699 } INVOKEKIND; 700 701 typedef struct tagFUNCDESC { 702 MEMBERID memid; 703 SCODE *lprgscode; 704 ELEMDESC *lprgelemdescParam; 705 FUNCKIND funckind; 706 INVOKEKIND invkind; 707 CALLCONV callconv; 708 SHORT cParams; 709 SHORT cParamsOpt; 710 SHORT oVft; 711 SHORT cScodes; 712 ELEMDESC elemdescFunc; 713 WORD wFuncFlags; 714 } FUNCDESC; 715 typedef struct tagFUNCDESC *LPFUNCDESC; 716 717 typedef enum tagVARKIND { 718 VAR_PERINSTANCE = 0, 719 VAR_STATIC = 1, 720 VAR_CONST = 2, 721 VAR_DISPATCH = 3 722 } VARKIND; 723 724 #define IMPLTYPEFLAG_FDEFAULT (0x1) 725 726 #define IMPLTYPEFLAG_FSOURCE (0x2) 727 728 #define IMPLTYPEFLAG_FRESTRICTED (0x4) 729 730 #define IMPLTYPEFLAG_FDEFAULTVTABLE (0x8) 731 732 733 typedef struct tagVARDESC { 734 MEMBERID memid; 735 LPOLESTR lpstrSchema; 736 __C89_NAMELESS union { 737 ULONG oInst; 738 VARIANT *lpvarValue; 739 } __C89_NAMELESSUNIONNAME; 740 ELEMDESC elemdescVar; 741 WORD wVarFlags; 742 VARKIND varkind; 743 } VARDESC; 744 typedef struct tagVARDESC *LPVARDESC; 745 746 typedef enum tagTYPEFLAGS { 747 TYPEFLAG_FAPPOBJECT = 0x1, 748 TYPEFLAG_FCANCREATE = 0x2, 749 TYPEFLAG_FLICENSED = 0x4, 750 TYPEFLAG_FPREDECLID = 0x8, 751 TYPEFLAG_FHIDDEN = 0x10, 752 TYPEFLAG_FCONTROL = 0x20, 753 TYPEFLAG_FDUAL = 0x40, 754 TYPEFLAG_FNONEXTENSIBLE = 0x80, 755 TYPEFLAG_FOLEAUTOMATION = 0x100, 756 TYPEFLAG_FRESTRICTED = 0x200, 757 TYPEFLAG_FAGGREGATABLE = 0x400, 758 TYPEFLAG_FREPLACEABLE = 0x800, 759 TYPEFLAG_FDISPATCHABLE = 0x1000, 760 TYPEFLAG_FREVERSEBIND = 0x2000, 761 TYPEFLAG_FPROXY = 0x4000 762 } TYPEFLAGS; 763 764 typedef enum tagFUNCFLAGS { 765 FUNCFLAG_FRESTRICTED = 0x1, 766 FUNCFLAG_FSOURCE = 0x2, 767 FUNCFLAG_FBINDABLE = 0x4, 768 FUNCFLAG_FREQUESTEDIT = 0x8, 769 FUNCFLAG_FDISPLAYBIND = 0x10, 770 FUNCFLAG_FDEFAULTBIND = 0x20, 771 FUNCFLAG_FHIDDEN = 0x40, 772 FUNCFLAG_FUSESGETLASTERROR = 0x80, 773 FUNCFLAG_FDEFAULTCOLLELEM = 0x100, 774 FUNCFLAG_FUIDEFAULT = 0x200, 775 FUNCFLAG_FNONBROWSABLE = 0x400, 776 FUNCFLAG_FREPLACEABLE = 0x800, 777 FUNCFLAG_FIMMEDIATEBIND = 0x1000 778 } FUNCFLAGS; 779 780 typedef enum tagVARFLAGS { 781 VARFLAG_FREADONLY = 0x1, 782 VARFLAG_FSOURCE = 0x2, 783 VARFLAG_FBINDABLE = 0x4, 784 VARFLAG_FREQUESTEDIT = 0x8, 785 VARFLAG_FDISPLAYBIND = 0x10, 786 VARFLAG_FDEFAULTBIND = 0x20, 787 VARFLAG_FHIDDEN = 0x40, 788 VARFLAG_FRESTRICTED = 0x80, 789 VARFLAG_FDEFAULTCOLLELEM = 0x100, 790 VARFLAG_FUIDEFAULT = 0x200, 791 VARFLAG_FNONBROWSABLE = 0x400, 792 VARFLAG_FREPLACEABLE = 0x800, 793 VARFLAG_FIMMEDIATEBIND = 0x1000 794 } VARFLAGS; 795 796 typedef struct tagCLEANLOCALSTORAGE { 797 IUnknown *pInterface; 798 PVOID pStorage; 799 DWORD flags; 800 } CLEANLOCALSTORAGE; 801 802 typedef struct tagCUSTDATAITEM { 803 GUID guid; 804 VARIANTARG varValue; 805 } CUSTDATAITEM; 806 typedef struct tagCUSTDATAITEM *LPCUSTDATAITEM; 807 808 typedef struct tagCUSTDATA { 809 DWORD cCustData; 810 LPCUSTDATAITEM prgCustData; 811 } CUSTDATA; 812 typedef struct tagCUSTDATA *LPCUSTDATA; 813 814 #endif /* __IOleAutomationTypes_INTERFACE_DEFINED__ */ 815 816 #endif 817 818 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 819 /***************************************************************************** 820 * ICreateTypeInfo interface 821 */ 822 #ifndef __ICreateTypeInfo_INTERFACE_DEFINED__ 823 #define __ICreateTypeInfo_INTERFACE_DEFINED__ 824 825 typedef ICreateTypeInfo *LPCREATETYPEINFO; 826 827 DEFINE_GUID(IID_ICreateTypeInfo, 0x00020405, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 828 #if defined(__cplusplus) && !defined(CINTERFACE) 829 MIDL_INTERFACE("00020405-0000-0000-c000-000000000046") 830 ICreateTypeInfo : public IUnknown 831 { 832 virtual HRESULT STDMETHODCALLTYPE SetGuid( 833 REFGUID guid) = 0; 834 835 virtual HRESULT STDMETHODCALLTYPE SetTypeFlags( 836 UINT uTypeFlags) = 0; 837 838 virtual HRESULT STDMETHODCALLTYPE SetDocString( 839 LPOLESTR pStrDoc) = 0; 840 841 virtual HRESULT STDMETHODCALLTYPE SetHelpContext( 842 DWORD dwHelpContext) = 0; 843 844 virtual HRESULT STDMETHODCALLTYPE SetVersion( 845 WORD wMajorVerNum, 846 WORD wMinorVerNum) = 0; 847 848 virtual HRESULT STDMETHODCALLTYPE AddRefTypeInfo( 849 ITypeInfo *pTInfo, 850 HREFTYPE *phRefType) = 0; 851 852 virtual HRESULT STDMETHODCALLTYPE AddFuncDesc( 853 UINT index, 854 FUNCDESC *pFuncDesc) = 0; 855 856 virtual HRESULT STDMETHODCALLTYPE AddImplType( 857 UINT index, 858 HREFTYPE hRefType) = 0; 859 860 virtual HRESULT STDMETHODCALLTYPE SetImplTypeFlags( 861 UINT index, 862 INT implTypeFlags) = 0; 863 864 virtual HRESULT STDMETHODCALLTYPE SetAlignment( 865 WORD cbAlignment) = 0; 866 867 virtual HRESULT STDMETHODCALLTYPE SetSchema( 868 LPOLESTR pStrSchema) = 0; 869 870 virtual HRESULT STDMETHODCALLTYPE AddVarDesc( 871 UINT index, 872 VARDESC *pVarDesc) = 0; 873 874 virtual HRESULT STDMETHODCALLTYPE SetFuncAndParamNames( 875 UINT index, 876 LPOLESTR *rgszNames, 877 UINT cNames) = 0; 878 879 virtual HRESULT STDMETHODCALLTYPE SetVarName( 880 UINT index, 881 LPOLESTR szName) = 0; 882 883 virtual HRESULT STDMETHODCALLTYPE SetTypeDescAlias( 884 TYPEDESC *pTDescAlias) = 0; 885 886 virtual HRESULT STDMETHODCALLTYPE DefineFuncAsDllEntry( 887 UINT index, 888 LPOLESTR szDllName, 889 LPOLESTR szProcName) = 0; 890 891 virtual HRESULT STDMETHODCALLTYPE SetFuncDocString( 892 UINT index, 893 LPOLESTR szDocString) = 0; 894 895 virtual HRESULT STDMETHODCALLTYPE SetVarDocString( 896 UINT index, 897 LPOLESTR szDocString) = 0; 898 899 virtual HRESULT STDMETHODCALLTYPE SetFuncHelpContext( 900 UINT index, 901 DWORD dwHelpContext) = 0; 902 903 virtual HRESULT STDMETHODCALLTYPE SetVarHelpContext( 904 UINT index, 905 DWORD dwHelpContext) = 0; 906 907 virtual HRESULT STDMETHODCALLTYPE SetMops( 908 UINT index, 909 BSTR bstrMops) = 0; 910 911 virtual HRESULT STDMETHODCALLTYPE SetTypeIdldesc( 912 IDLDESC *pIdlDesc) = 0; 913 914 virtual HRESULT STDMETHODCALLTYPE LayOut( 915 ) = 0; 916 917 }; 918 #ifdef __CRT_UUID_DECL 919 __CRT_UUID_DECL(ICreateTypeInfo, 0x00020405, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 920 #endif 921 #else 922 typedef struct ICreateTypeInfoVtbl { 923 BEGIN_INTERFACE 924 925 /*** IUnknown methods ***/ 926 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 927 ICreateTypeInfo* This, 928 REFIID riid, 929 void **ppvObject); 930 931 ULONG (STDMETHODCALLTYPE *AddRef)( 932 ICreateTypeInfo* This); 933 934 ULONG (STDMETHODCALLTYPE *Release)( 935 ICreateTypeInfo* This); 936 937 /*** ICreateTypeInfo methods ***/ 938 HRESULT (STDMETHODCALLTYPE *SetGuid)( 939 ICreateTypeInfo* This, 940 REFGUID guid); 941 942 HRESULT (STDMETHODCALLTYPE *SetTypeFlags)( 943 ICreateTypeInfo* This, 944 UINT uTypeFlags); 945 946 HRESULT (STDMETHODCALLTYPE *SetDocString)( 947 ICreateTypeInfo* This, 948 LPOLESTR pStrDoc); 949 950 HRESULT (STDMETHODCALLTYPE *SetHelpContext)( 951 ICreateTypeInfo* This, 952 DWORD dwHelpContext); 953 954 HRESULT (STDMETHODCALLTYPE *SetVersion)( 955 ICreateTypeInfo* This, 956 WORD wMajorVerNum, 957 WORD wMinorVerNum); 958 959 HRESULT (STDMETHODCALLTYPE *AddRefTypeInfo)( 960 ICreateTypeInfo* This, 961 ITypeInfo *pTInfo, 962 HREFTYPE *phRefType); 963 964 HRESULT (STDMETHODCALLTYPE *AddFuncDesc)( 965 ICreateTypeInfo* This, 966 UINT index, 967 FUNCDESC *pFuncDesc); 968 969 HRESULT (STDMETHODCALLTYPE *AddImplType)( 970 ICreateTypeInfo* This, 971 UINT index, 972 HREFTYPE hRefType); 973 974 HRESULT (STDMETHODCALLTYPE *SetImplTypeFlags)( 975 ICreateTypeInfo* This, 976 UINT index, 977 INT implTypeFlags); 978 979 HRESULT (STDMETHODCALLTYPE *SetAlignment)( 980 ICreateTypeInfo* This, 981 WORD cbAlignment); 982 983 HRESULT (STDMETHODCALLTYPE *SetSchema)( 984 ICreateTypeInfo* This, 985 LPOLESTR pStrSchema); 986 987 HRESULT (STDMETHODCALLTYPE *AddVarDesc)( 988 ICreateTypeInfo* This, 989 UINT index, 990 VARDESC *pVarDesc); 991 992 HRESULT (STDMETHODCALLTYPE *SetFuncAndParamNames)( 993 ICreateTypeInfo* This, 994 UINT index, 995 LPOLESTR *rgszNames, 996 UINT cNames); 997 998 HRESULT (STDMETHODCALLTYPE *SetVarName)( 999 ICreateTypeInfo* This, 1000 UINT index, 1001 LPOLESTR szName); 1002 1003 HRESULT (STDMETHODCALLTYPE *SetTypeDescAlias)( 1004 ICreateTypeInfo* This, 1005 TYPEDESC *pTDescAlias); 1006 1007 HRESULT (STDMETHODCALLTYPE *DefineFuncAsDllEntry)( 1008 ICreateTypeInfo* This, 1009 UINT index, 1010 LPOLESTR szDllName, 1011 LPOLESTR szProcName); 1012 1013 HRESULT (STDMETHODCALLTYPE *SetFuncDocString)( 1014 ICreateTypeInfo* This, 1015 UINT index, 1016 LPOLESTR szDocString); 1017 1018 HRESULT (STDMETHODCALLTYPE *SetVarDocString)( 1019 ICreateTypeInfo* This, 1020 UINT index, 1021 LPOLESTR szDocString); 1022 1023 HRESULT (STDMETHODCALLTYPE *SetFuncHelpContext)( 1024 ICreateTypeInfo* This, 1025 UINT index, 1026 DWORD dwHelpContext); 1027 1028 HRESULT (STDMETHODCALLTYPE *SetVarHelpContext)( 1029 ICreateTypeInfo* This, 1030 UINT index, 1031 DWORD dwHelpContext); 1032 1033 HRESULT (STDMETHODCALLTYPE *SetMops)( 1034 ICreateTypeInfo* This, 1035 UINT index, 1036 BSTR bstrMops); 1037 1038 HRESULT (STDMETHODCALLTYPE *SetTypeIdldesc)( 1039 ICreateTypeInfo* This, 1040 IDLDESC *pIdlDesc); 1041 1042 HRESULT (STDMETHODCALLTYPE *LayOut)( 1043 ICreateTypeInfo* This); 1044 1045 END_INTERFACE 1046 } ICreateTypeInfoVtbl; 1047 interface ICreateTypeInfo { 1048 CONST_VTBL ICreateTypeInfoVtbl* lpVtbl; 1049 }; 1050 1051 #ifdef COBJMACROS 1052 #ifndef WIDL_C_INLINE_WRAPPERS 1053 /*** IUnknown methods ***/ 1054 #define ICreateTypeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1055 #define ICreateTypeInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 1056 #define ICreateTypeInfo_Release(This) (This)->lpVtbl->Release(This) 1057 /*** ICreateTypeInfo methods ***/ 1058 #define ICreateTypeInfo_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) 1059 #define ICreateTypeInfo_SetTypeFlags(This,uTypeFlags) (This)->lpVtbl->SetTypeFlags(This,uTypeFlags) 1060 #define ICreateTypeInfo_SetDocString(This,pStrDoc) (This)->lpVtbl->SetDocString(This,pStrDoc) 1061 #define ICreateTypeInfo_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) 1062 #define ICreateTypeInfo_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) 1063 #define ICreateTypeInfo_AddRefTypeInfo(This,pTInfo,phRefType) (This)->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType) 1064 #define ICreateTypeInfo_AddFuncDesc(This,index,pFuncDesc) (This)->lpVtbl->AddFuncDesc(This,index,pFuncDesc) 1065 #define ICreateTypeInfo_AddImplType(This,index,hRefType) (This)->lpVtbl->AddImplType(This,index,hRefType) 1066 #define ICreateTypeInfo_SetImplTypeFlags(This,index,implTypeFlags) (This)->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags) 1067 #define ICreateTypeInfo_SetAlignment(This,cbAlignment) (This)->lpVtbl->SetAlignment(This,cbAlignment) 1068 #define ICreateTypeInfo_SetSchema(This,pStrSchema) (This)->lpVtbl->SetSchema(This,pStrSchema) 1069 #define ICreateTypeInfo_AddVarDesc(This,index,pVarDesc) (This)->lpVtbl->AddVarDesc(This,index,pVarDesc) 1070 #define ICreateTypeInfo_SetFuncAndParamNames(This,index,rgszNames,cNames) (This)->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames) 1071 #define ICreateTypeInfo_SetVarName(This,index,szName) (This)->lpVtbl->SetVarName(This,index,szName) 1072 #define ICreateTypeInfo_SetTypeDescAlias(This,pTDescAlias) (This)->lpVtbl->SetTypeDescAlias(This,pTDescAlias) 1073 #define ICreateTypeInfo_DefineFuncAsDllEntry(This,index,szDllName,szProcName) (This)->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName) 1074 #define ICreateTypeInfo_SetFuncDocString(This,index,szDocString) (This)->lpVtbl->SetFuncDocString(This,index,szDocString) 1075 #define ICreateTypeInfo_SetVarDocString(This,index,szDocString) (This)->lpVtbl->SetVarDocString(This,index,szDocString) 1076 #define ICreateTypeInfo_SetFuncHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext) 1077 #define ICreateTypeInfo_SetVarHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetVarHelpContext(This,index,dwHelpContext) 1078 #define ICreateTypeInfo_SetMops(This,index,bstrMops) (This)->lpVtbl->SetMops(This,index,bstrMops) 1079 #define ICreateTypeInfo_SetTypeIdldesc(This,pIdlDesc) (This)->lpVtbl->SetTypeIdldesc(This,pIdlDesc) 1080 #define ICreateTypeInfo_LayOut(This) (This)->lpVtbl->LayOut(This) 1081 #else 1082 /*** IUnknown methods ***/ 1083 static FORCEINLINE HRESULT ICreateTypeInfo_QueryInterface(ICreateTypeInfo* This,REFIID riid,void **ppvObject) { 1084 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1085 } 1086 static FORCEINLINE ULONG ICreateTypeInfo_AddRef(ICreateTypeInfo* This) { 1087 return This->lpVtbl->AddRef(This); 1088 } 1089 static FORCEINLINE ULONG ICreateTypeInfo_Release(ICreateTypeInfo* This) { 1090 return This->lpVtbl->Release(This); 1091 } 1092 /*** ICreateTypeInfo methods ***/ 1093 static FORCEINLINE HRESULT ICreateTypeInfo_SetGuid(ICreateTypeInfo* This,REFGUID guid) { 1094 return This->lpVtbl->SetGuid(This,guid); 1095 } 1096 static FORCEINLINE HRESULT ICreateTypeInfo_SetTypeFlags(ICreateTypeInfo* This,UINT uTypeFlags) { 1097 return This->lpVtbl->SetTypeFlags(This,uTypeFlags); 1098 } 1099 static FORCEINLINE HRESULT ICreateTypeInfo_SetDocString(ICreateTypeInfo* This,LPOLESTR pStrDoc) { 1100 return This->lpVtbl->SetDocString(This,pStrDoc); 1101 } 1102 static FORCEINLINE HRESULT ICreateTypeInfo_SetHelpContext(ICreateTypeInfo* This,DWORD dwHelpContext) { 1103 return This->lpVtbl->SetHelpContext(This,dwHelpContext); 1104 } 1105 static FORCEINLINE HRESULT ICreateTypeInfo_SetVersion(ICreateTypeInfo* This,WORD wMajorVerNum,WORD wMinorVerNum) { 1106 return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); 1107 } 1108 static FORCEINLINE HRESULT ICreateTypeInfo_AddRefTypeInfo(ICreateTypeInfo* This,ITypeInfo *pTInfo,HREFTYPE *phRefType) { 1109 return This->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType); 1110 } 1111 static FORCEINLINE HRESULT ICreateTypeInfo_AddFuncDesc(ICreateTypeInfo* This,UINT index,FUNCDESC *pFuncDesc) { 1112 return This->lpVtbl->AddFuncDesc(This,index,pFuncDesc); 1113 } 1114 static FORCEINLINE HRESULT ICreateTypeInfo_AddImplType(ICreateTypeInfo* This,UINT index,HREFTYPE hRefType) { 1115 return This->lpVtbl->AddImplType(This,index,hRefType); 1116 } 1117 static FORCEINLINE HRESULT ICreateTypeInfo_SetImplTypeFlags(ICreateTypeInfo* This,UINT index,INT implTypeFlags) { 1118 return This->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags); 1119 } 1120 static FORCEINLINE HRESULT ICreateTypeInfo_SetAlignment(ICreateTypeInfo* This,WORD cbAlignment) { 1121 return This->lpVtbl->SetAlignment(This,cbAlignment); 1122 } 1123 static FORCEINLINE HRESULT ICreateTypeInfo_SetSchema(ICreateTypeInfo* This,LPOLESTR pStrSchema) { 1124 return This->lpVtbl->SetSchema(This,pStrSchema); 1125 } 1126 static FORCEINLINE HRESULT ICreateTypeInfo_AddVarDesc(ICreateTypeInfo* This,UINT index,VARDESC *pVarDesc) { 1127 return This->lpVtbl->AddVarDesc(This,index,pVarDesc); 1128 } 1129 static FORCEINLINE HRESULT ICreateTypeInfo_SetFuncAndParamNames(ICreateTypeInfo* This,UINT index,LPOLESTR *rgszNames,UINT cNames) { 1130 return This->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames); 1131 } 1132 static FORCEINLINE HRESULT ICreateTypeInfo_SetVarName(ICreateTypeInfo* This,UINT index,LPOLESTR szName) { 1133 return This->lpVtbl->SetVarName(This,index,szName); 1134 } 1135 static FORCEINLINE HRESULT ICreateTypeInfo_SetTypeDescAlias(ICreateTypeInfo* This,TYPEDESC *pTDescAlias) { 1136 return This->lpVtbl->SetTypeDescAlias(This,pTDescAlias); 1137 } 1138 static FORCEINLINE HRESULT ICreateTypeInfo_DefineFuncAsDllEntry(ICreateTypeInfo* This,UINT index,LPOLESTR szDllName,LPOLESTR szProcName) { 1139 return This->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName); 1140 } 1141 static FORCEINLINE HRESULT ICreateTypeInfo_SetFuncDocString(ICreateTypeInfo* This,UINT index,LPOLESTR szDocString) { 1142 return This->lpVtbl->SetFuncDocString(This,index,szDocString); 1143 } 1144 static FORCEINLINE HRESULT ICreateTypeInfo_SetVarDocString(ICreateTypeInfo* This,UINT index,LPOLESTR szDocString) { 1145 return This->lpVtbl->SetVarDocString(This,index,szDocString); 1146 } 1147 static FORCEINLINE HRESULT ICreateTypeInfo_SetFuncHelpContext(ICreateTypeInfo* This,UINT index,DWORD dwHelpContext) { 1148 return This->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext); 1149 } 1150 static FORCEINLINE HRESULT ICreateTypeInfo_SetVarHelpContext(ICreateTypeInfo* This,UINT index,DWORD dwHelpContext) { 1151 return This->lpVtbl->SetVarHelpContext(This,index,dwHelpContext); 1152 } 1153 static FORCEINLINE HRESULT ICreateTypeInfo_SetMops(ICreateTypeInfo* This,UINT index,BSTR bstrMops) { 1154 return This->lpVtbl->SetMops(This,index,bstrMops); 1155 } 1156 static FORCEINLINE HRESULT ICreateTypeInfo_SetTypeIdldesc(ICreateTypeInfo* This,IDLDESC *pIdlDesc) { 1157 return This->lpVtbl->SetTypeIdldesc(This,pIdlDesc); 1158 } 1159 static FORCEINLINE HRESULT ICreateTypeInfo_LayOut(ICreateTypeInfo* This) { 1160 return This->lpVtbl->LayOut(This); 1161 } 1162 #endif 1163 #endif 1164 1165 #endif 1166 1167 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetGuid_Proxy( 1168 ICreateTypeInfo* This, 1169 REFGUID guid); 1170 void __RPC_STUB ICreateTypeInfo_SetGuid_Stub( 1171 IRpcStubBuffer* This, 1172 IRpcChannelBuffer* pRpcChannelBuffer, 1173 PRPC_MESSAGE pRpcMessage, 1174 DWORD* pdwStubPhase); 1175 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetTypeFlags_Proxy( 1176 ICreateTypeInfo* This, 1177 UINT uTypeFlags); 1178 void __RPC_STUB ICreateTypeInfo_SetTypeFlags_Stub( 1179 IRpcStubBuffer* This, 1180 IRpcChannelBuffer* pRpcChannelBuffer, 1181 PRPC_MESSAGE pRpcMessage, 1182 DWORD* pdwStubPhase); 1183 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetDocString_Proxy( 1184 ICreateTypeInfo* This, 1185 LPOLESTR pStrDoc); 1186 void __RPC_STUB ICreateTypeInfo_SetDocString_Stub( 1187 IRpcStubBuffer* This, 1188 IRpcChannelBuffer* pRpcChannelBuffer, 1189 PRPC_MESSAGE pRpcMessage, 1190 DWORD* pdwStubPhase); 1191 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetHelpContext_Proxy( 1192 ICreateTypeInfo* This, 1193 DWORD dwHelpContext); 1194 void __RPC_STUB ICreateTypeInfo_SetHelpContext_Stub( 1195 IRpcStubBuffer* This, 1196 IRpcChannelBuffer* pRpcChannelBuffer, 1197 PRPC_MESSAGE pRpcMessage, 1198 DWORD* pdwStubPhase); 1199 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVersion_Proxy( 1200 ICreateTypeInfo* This, 1201 WORD wMajorVerNum, 1202 WORD wMinorVerNum); 1203 void __RPC_STUB ICreateTypeInfo_SetVersion_Stub( 1204 IRpcStubBuffer* This, 1205 IRpcChannelBuffer* pRpcChannelBuffer, 1206 PRPC_MESSAGE pRpcMessage, 1207 DWORD* pdwStubPhase); 1208 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddRefTypeInfo_Proxy( 1209 ICreateTypeInfo* This, 1210 ITypeInfo *pTInfo, 1211 HREFTYPE *phRefType); 1212 void __RPC_STUB ICreateTypeInfo_AddRefTypeInfo_Stub( 1213 IRpcStubBuffer* This, 1214 IRpcChannelBuffer* pRpcChannelBuffer, 1215 PRPC_MESSAGE pRpcMessage, 1216 DWORD* pdwStubPhase); 1217 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddFuncDesc_Proxy( 1218 ICreateTypeInfo* This, 1219 UINT index, 1220 FUNCDESC *pFuncDesc); 1221 void __RPC_STUB ICreateTypeInfo_AddFuncDesc_Stub( 1222 IRpcStubBuffer* This, 1223 IRpcChannelBuffer* pRpcChannelBuffer, 1224 PRPC_MESSAGE pRpcMessage, 1225 DWORD* pdwStubPhase); 1226 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddImplType_Proxy( 1227 ICreateTypeInfo* This, 1228 UINT index, 1229 HREFTYPE hRefType); 1230 void __RPC_STUB ICreateTypeInfo_AddImplType_Stub( 1231 IRpcStubBuffer* This, 1232 IRpcChannelBuffer* pRpcChannelBuffer, 1233 PRPC_MESSAGE pRpcMessage, 1234 DWORD* pdwStubPhase); 1235 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetImplTypeFlags_Proxy( 1236 ICreateTypeInfo* This, 1237 UINT index, 1238 INT implTypeFlags); 1239 void __RPC_STUB ICreateTypeInfo_SetImplTypeFlags_Stub( 1240 IRpcStubBuffer* This, 1241 IRpcChannelBuffer* pRpcChannelBuffer, 1242 PRPC_MESSAGE pRpcMessage, 1243 DWORD* pdwStubPhase); 1244 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetAlignment_Proxy( 1245 ICreateTypeInfo* This, 1246 WORD cbAlignment); 1247 void __RPC_STUB ICreateTypeInfo_SetAlignment_Stub( 1248 IRpcStubBuffer* This, 1249 IRpcChannelBuffer* pRpcChannelBuffer, 1250 PRPC_MESSAGE pRpcMessage, 1251 DWORD* pdwStubPhase); 1252 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetSchema_Proxy( 1253 ICreateTypeInfo* This, 1254 LPOLESTR pStrSchema); 1255 void __RPC_STUB ICreateTypeInfo_SetSchema_Stub( 1256 IRpcStubBuffer* This, 1257 IRpcChannelBuffer* pRpcChannelBuffer, 1258 PRPC_MESSAGE pRpcMessage, 1259 DWORD* pdwStubPhase); 1260 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_AddVarDesc_Proxy( 1261 ICreateTypeInfo* This, 1262 UINT index, 1263 VARDESC *pVarDesc); 1264 void __RPC_STUB ICreateTypeInfo_AddVarDesc_Stub( 1265 IRpcStubBuffer* This, 1266 IRpcChannelBuffer* pRpcChannelBuffer, 1267 PRPC_MESSAGE pRpcMessage, 1268 DWORD* pdwStubPhase); 1269 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetFuncAndParamNames_Proxy( 1270 ICreateTypeInfo* This, 1271 UINT index, 1272 LPOLESTR *rgszNames, 1273 UINT cNames); 1274 void __RPC_STUB ICreateTypeInfo_SetFuncAndParamNames_Stub( 1275 IRpcStubBuffer* This, 1276 IRpcChannelBuffer* pRpcChannelBuffer, 1277 PRPC_MESSAGE pRpcMessage, 1278 DWORD* pdwStubPhase); 1279 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVarName_Proxy( 1280 ICreateTypeInfo* This, 1281 UINT index, 1282 LPOLESTR szName); 1283 void __RPC_STUB ICreateTypeInfo_SetVarName_Stub( 1284 IRpcStubBuffer* This, 1285 IRpcChannelBuffer* pRpcChannelBuffer, 1286 PRPC_MESSAGE pRpcMessage, 1287 DWORD* pdwStubPhase); 1288 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetTypeDescAlias_Proxy( 1289 ICreateTypeInfo* This, 1290 TYPEDESC *pTDescAlias); 1291 void __RPC_STUB ICreateTypeInfo_SetTypeDescAlias_Stub( 1292 IRpcStubBuffer* This, 1293 IRpcChannelBuffer* pRpcChannelBuffer, 1294 PRPC_MESSAGE pRpcMessage, 1295 DWORD* pdwStubPhase); 1296 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_DefineFuncAsDllEntry_Proxy( 1297 ICreateTypeInfo* This, 1298 UINT index, 1299 LPOLESTR szDllName, 1300 LPOLESTR szProcName); 1301 void __RPC_STUB ICreateTypeInfo_DefineFuncAsDllEntry_Stub( 1302 IRpcStubBuffer* This, 1303 IRpcChannelBuffer* pRpcChannelBuffer, 1304 PRPC_MESSAGE pRpcMessage, 1305 DWORD* pdwStubPhase); 1306 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetFuncDocString_Proxy( 1307 ICreateTypeInfo* This, 1308 UINT index, 1309 LPOLESTR szDocString); 1310 void __RPC_STUB ICreateTypeInfo_SetFuncDocString_Stub( 1311 IRpcStubBuffer* This, 1312 IRpcChannelBuffer* pRpcChannelBuffer, 1313 PRPC_MESSAGE pRpcMessage, 1314 DWORD* pdwStubPhase); 1315 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVarDocString_Proxy( 1316 ICreateTypeInfo* This, 1317 UINT index, 1318 LPOLESTR szDocString); 1319 void __RPC_STUB ICreateTypeInfo_SetVarDocString_Stub( 1320 IRpcStubBuffer* This, 1321 IRpcChannelBuffer* pRpcChannelBuffer, 1322 PRPC_MESSAGE pRpcMessage, 1323 DWORD* pdwStubPhase); 1324 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetFuncHelpContext_Proxy( 1325 ICreateTypeInfo* This, 1326 UINT index, 1327 DWORD dwHelpContext); 1328 void __RPC_STUB ICreateTypeInfo_SetFuncHelpContext_Stub( 1329 IRpcStubBuffer* This, 1330 IRpcChannelBuffer* pRpcChannelBuffer, 1331 PRPC_MESSAGE pRpcMessage, 1332 DWORD* pdwStubPhase); 1333 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetVarHelpContext_Proxy( 1334 ICreateTypeInfo* This, 1335 UINT index, 1336 DWORD dwHelpContext); 1337 void __RPC_STUB ICreateTypeInfo_SetVarHelpContext_Stub( 1338 IRpcStubBuffer* This, 1339 IRpcChannelBuffer* pRpcChannelBuffer, 1340 PRPC_MESSAGE pRpcMessage, 1341 DWORD* pdwStubPhase); 1342 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetMops_Proxy( 1343 ICreateTypeInfo* This, 1344 UINT index, 1345 BSTR bstrMops); 1346 void __RPC_STUB ICreateTypeInfo_SetMops_Stub( 1347 IRpcStubBuffer* This, 1348 IRpcChannelBuffer* pRpcChannelBuffer, 1349 PRPC_MESSAGE pRpcMessage, 1350 DWORD* pdwStubPhase); 1351 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_SetTypeIdldesc_Proxy( 1352 ICreateTypeInfo* This, 1353 IDLDESC *pIdlDesc); 1354 void __RPC_STUB ICreateTypeInfo_SetTypeIdldesc_Stub( 1355 IRpcStubBuffer* This, 1356 IRpcChannelBuffer* pRpcChannelBuffer, 1357 PRPC_MESSAGE pRpcMessage, 1358 DWORD* pdwStubPhase); 1359 HRESULT STDMETHODCALLTYPE ICreateTypeInfo_LayOut_Proxy( 1360 ICreateTypeInfo* This); 1361 void __RPC_STUB ICreateTypeInfo_LayOut_Stub( 1362 IRpcStubBuffer* This, 1363 IRpcChannelBuffer* pRpcChannelBuffer, 1364 PRPC_MESSAGE pRpcMessage, 1365 DWORD* pdwStubPhase); 1366 1367 #endif /* __ICreateTypeInfo_INTERFACE_DEFINED__ */ 1368 1369 1370 /***************************************************************************** 1371 * ICreateTypeInfo2 interface 1372 */ 1373 #ifndef __ICreateTypeInfo2_INTERFACE_DEFINED__ 1374 #define __ICreateTypeInfo2_INTERFACE_DEFINED__ 1375 1376 typedef ICreateTypeInfo2 *LPCREATETYPEINFO2; 1377 1378 DEFINE_GUID(IID_ICreateTypeInfo2, 0x0002040e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1379 #if defined(__cplusplus) && !defined(CINTERFACE) 1380 MIDL_INTERFACE("0002040e-0000-0000-c000-000000000046") 1381 ICreateTypeInfo2 : public ICreateTypeInfo 1382 { 1383 virtual HRESULT STDMETHODCALLTYPE DeleteFuncDesc( 1384 UINT index) = 0; 1385 1386 virtual HRESULT STDMETHODCALLTYPE DeleteFuncDescByMemId( 1387 MEMBERID memid, 1388 INVOKEKIND invKind) = 0; 1389 1390 virtual HRESULT STDMETHODCALLTYPE DeleteVarDesc( 1391 UINT index) = 0; 1392 1393 virtual HRESULT STDMETHODCALLTYPE DeleteVarDescByMemId( 1394 MEMBERID memid) = 0; 1395 1396 virtual HRESULT STDMETHODCALLTYPE DeleteImplType( 1397 UINT index) = 0; 1398 1399 virtual HRESULT STDMETHODCALLTYPE SetCustData( 1400 REFGUID guid, 1401 VARIANT *pVarVal) = 0; 1402 1403 virtual HRESULT STDMETHODCALLTYPE SetFuncCustData( 1404 UINT index, 1405 REFGUID guid, 1406 VARIANT *pVarVal) = 0; 1407 1408 virtual HRESULT STDMETHODCALLTYPE SetParamCustData( 1409 UINT indexFunc, 1410 UINT indexParam, 1411 REFGUID guid, 1412 VARIANT *pVarVal) = 0; 1413 1414 virtual HRESULT STDMETHODCALLTYPE SetVarCustData( 1415 UINT index, 1416 REFGUID guid, 1417 VARIANT *pVarVal) = 0; 1418 1419 virtual HRESULT STDMETHODCALLTYPE SetImplTypeCustData( 1420 UINT index, 1421 REFGUID guid, 1422 VARIANT *pVarVal) = 0; 1423 1424 virtual HRESULT STDMETHODCALLTYPE SetHelpStringContext( 1425 ULONG dwHelpStringContext) = 0; 1426 1427 virtual HRESULT STDMETHODCALLTYPE SetFuncHelpStringContext( 1428 UINT index, 1429 ULONG dwHelpStringContext) = 0; 1430 1431 virtual HRESULT STDMETHODCALLTYPE SetVarHelpStringContext( 1432 UINT index, 1433 ULONG dwHelpStringContext) = 0; 1434 1435 virtual HRESULT STDMETHODCALLTYPE Invalidate( 1436 ) = 0; 1437 1438 virtual HRESULT STDMETHODCALLTYPE SetName( 1439 LPOLESTR szName) = 0; 1440 1441 }; 1442 #ifdef __CRT_UUID_DECL 1443 __CRT_UUID_DECL(ICreateTypeInfo2, 0x0002040e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1444 #endif 1445 #else 1446 typedef struct ICreateTypeInfo2Vtbl { 1447 BEGIN_INTERFACE 1448 1449 /*** IUnknown methods ***/ 1450 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1451 ICreateTypeInfo2* This, 1452 REFIID riid, 1453 void **ppvObject); 1454 1455 ULONG (STDMETHODCALLTYPE *AddRef)( 1456 ICreateTypeInfo2* This); 1457 1458 ULONG (STDMETHODCALLTYPE *Release)( 1459 ICreateTypeInfo2* This); 1460 1461 /*** ICreateTypeInfo methods ***/ 1462 HRESULT (STDMETHODCALLTYPE *SetGuid)( 1463 ICreateTypeInfo2* This, 1464 REFGUID guid); 1465 1466 HRESULT (STDMETHODCALLTYPE *SetTypeFlags)( 1467 ICreateTypeInfo2* This, 1468 UINT uTypeFlags); 1469 1470 HRESULT (STDMETHODCALLTYPE *SetDocString)( 1471 ICreateTypeInfo2* This, 1472 LPOLESTR pStrDoc); 1473 1474 HRESULT (STDMETHODCALLTYPE *SetHelpContext)( 1475 ICreateTypeInfo2* This, 1476 DWORD dwHelpContext); 1477 1478 HRESULT (STDMETHODCALLTYPE *SetVersion)( 1479 ICreateTypeInfo2* This, 1480 WORD wMajorVerNum, 1481 WORD wMinorVerNum); 1482 1483 HRESULT (STDMETHODCALLTYPE *AddRefTypeInfo)( 1484 ICreateTypeInfo2* This, 1485 ITypeInfo *pTInfo, 1486 HREFTYPE *phRefType); 1487 1488 HRESULT (STDMETHODCALLTYPE *AddFuncDesc)( 1489 ICreateTypeInfo2* This, 1490 UINT index, 1491 FUNCDESC *pFuncDesc); 1492 1493 HRESULT (STDMETHODCALLTYPE *AddImplType)( 1494 ICreateTypeInfo2* This, 1495 UINT index, 1496 HREFTYPE hRefType); 1497 1498 HRESULT (STDMETHODCALLTYPE *SetImplTypeFlags)( 1499 ICreateTypeInfo2* This, 1500 UINT index, 1501 INT implTypeFlags); 1502 1503 HRESULT (STDMETHODCALLTYPE *SetAlignment)( 1504 ICreateTypeInfo2* This, 1505 WORD cbAlignment); 1506 1507 HRESULT (STDMETHODCALLTYPE *SetSchema)( 1508 ICreateTypeInfo2* This, 1509 LPOLESTR pStrSchema); 1510 1511 HRESULT (STDMETHODCALLTYPE *AddVarDesc)( 1512 ICreateTypeInfo2* This, 1513 UINT index, 1514 VARDESC *pVarDesc); 1515 1516 HRESULT (STDMETHODCALLTYPE *SetFuncAndParamNames)( 1517 ICreateTypeInfo2* This, 1518 UINT index, 1519 LPOLESTR *rgszNames, 1520 UINT cNames); 1521 1522 HRESULT (STDMETHODCALLTYPE *SetVarName)( 1523 ICreateTypeInfo2* This, 1524 UINT index, 1525 LPOLESTR szName); 1526 1527 HRESULT (STDMETHODCALLTYPE *SetTypeDescAlias)( 1528 ICreateTypeInfo2* This, 1529 TYPEDESC *pTDescAlias); 1530 1531 HRESULT (STDMETHODCALLTYPE *DefineFuncAsDllEntry)( 1532 ICreateTypeInfo2* This, 1533 UINT index, 1534 LPOLESTR szDllName, 1535 LPOLESTR szProcName); 1536 1537 HRESULT (STDMETHODCALLTYPE *SetFuncDocString)( 1538 ICreateTypeInfo2* This, 1539 UINT index, 1540 LPOLESTR szDocString); 1541 1542 HRESULT (STDMETHODCALLTYPE *SetVarDocString)( 1543 ICreateTypeInfo2* This, 1544 UINT index, 1545 LPOLESTR szDocString); 1546 1547 HRESULT (STDMETHODCALLTYPE *SetFuncHelpContext)( 1548 ICreateTypeInfo2* This, 1549 UINT index, 1550 DWORD dwHelpContext); 1551 1552 HRESULT (STDMETHODCALLTYPE *SetVarHelpContext)( 1553 ICreateTypeInfo2* This, 1554 UINT index, 1555 DWORD dwHelpContext); 1556 1557 HRESULT (STDMETHODCALLTYPE *SetMops)( 1558 ICreateTypeInfo2* This, 1559 UINT index, 1560 BSTR bstrMops); 1561 1562 HRESULT (STDMETHODCALLTYPE *SetTypeIdldesc)( 1563 ICreateTypeInfo2* This, 1564 IDLDESC *pIdlDesc); 1565 1566 HRESULT (STDMETHODCALLTYPE *LayOut)( 1567 ICreateTypeInfo2* This); 1568 1569 /*** ICreateTypeInfo2 methods ***/ 1570 HRESULT (STDMETHODCALLTYPE *DeleteFuncDesc)( 1571 ICreateTypeInfo2* This, 1572 UINT index); 1573 1574 HRESULT (STDMETHODCALLTYPE *DeleteFuncDescByMemId)( 1575 ICreateTypeInfo2* This, 1576 MEMBERID memid, 1577 INVOKEKIND invKind); 1578 1579 HRESULT (STDMETHODCALLTYPE *DeleteVarDesc)( 1580 ICreateTypeInfo2* This, 1581 UINT index); 1582 1583 HRESULT (STDMETHODCALLTYPE *DeleteVarDescByMemId)( 1584 ICreateTypeInfo2* This, 1585 MEMBERID memid); 1586 1587 HRESULT (STDMETHODCALLTYPE *DeleteImplType)( 1588 ICreateTypeInfo2* This, 1589 UINT index); 1590 1591 HRESULT (STDMETHODCALLTYPE *SetCustData)( 1592 ICreateTypeInfo2* This, 1593 REFGUID guid, 1594 VARIANT *pVarVal); 1595 1596 HRESULT (STDMETHODCALLTYPE *SetFuncCustData)( 1597 ICreateTypeInfo2* This, 1598 UINT index, 1599 REFGUID guid, 1600 VARIANT *pVarVal); 1601 1602 HRESULT (STDMETHODCALLTYPE *SetParamCustData)( 1603 ICreateTypeInfo2* This, 1604 UINT indexFunc, 1605 UINT indexParam, 1606 REFGUID guid, 1607 VARIANT *pVarVal); 1608 1609 HRESULT (STDMETHODCALLTYPE *SetVarCustData)( 1610 ICreateTypeInfo2* This, 1611 UINT index, 1612 REFGUID guid, 1613 VARIANT *pVarVal); 1614 1615 HRESULT (STDMETHODCALLTYPE *SetImplTypeCustData)( 1616 ICreateTypeInfo2* This, 1617 UINT index, 1618 REFGUID guid, 1619 VARIANT *pVarVal); 1620 1621 HRESULT (STDMETHODCALLTYPE *SetHelpStringContext)( 1622 ICreateTypeInfo2* This, 1623 ULONG dwHelpStringContext); 1624 1625 HRESULT (STDMETHODCALLTYPE *SetFuncHelpStringContext)( 1626 ICreateTypeInfo2* This, 1627 UINT index, 1628 ULONG dwHelpStringContext); 1629 1630 HRESULT (STDMETHODCALLTYPE *SetVarHelpStringContext)( 1631 ICreateTypeInfo2* This, 1632 UINT index, 1633 ULONG dwHelpStringContext); 1634 1635 HRESULT (STDMETHODCALLTYPE *Invalidate)( 1636 ICreateTypeInfo2* This); 1637 1638 HRESULT (STDMETHODCALLTYPE *SetName)( 1639 ICreateTypeInfo2* This, 1640 LPOLESTR szName); 1641 1642 END_INTERFACE 1643 } ICreateTypeInfo2Vtbl; 1644 interface ICreateTypeInfo2 { 1645 CONST_VTBL ICreateTypeInfo2Vtbl* lpVtbl; 1646 }; 1647 1648 #ifdef COBJMACROS 1649 #ifndef WIDL_C_INLINE_WRAPPERS 1650 /*** IUnknown methods ***/ 1651 #define ICreateTypeInfo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1652 #define ICreateTypeInfo2_AddRef(This) (This)->lpVtbl->AddRef(This) 1653 #define ICreateTypeInfo2_Release(This) (This)->lpVtbl->Release(This) 1654 /*** ICreateTypeInfo methods ***/ 1655 #define ICreateTypeInfo2_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) 1656 #define ICreateTypeInfo2_SetTypeFlags(This,uTypeFlags) (This)->lpVtbl->SetTypeFlags(This,uTypeFlags) 1657 #define ICreateTypeInfo2_SetDocString(This,pStrDoc) (This)->lpVtbl->SetDocString(This,pStrDoc) 1658 #define ICreateTypeInfo2_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) 1659 #define ICreateTypeInfo2_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) 1660 #define ICreateTypeInfo2_AddRefTypeInfo(This,pTInfo,phRefType) (This)->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType) 1661 #define ICreateTypeInfo2_AddFuncDesc(This,index,pFuncDesc) (This)->lpVtbl->AddFuncDesc(This,index,pFuncDesc) 1662 #define ICreateTypeInfo2_AddImplType(This,index,hRefType) (This)->lpVtbl->AddImplType(This,index,hRefType) 1663 #define ICreateTypeInfo2_SetImplTypeFlags(This,index,implTypeFlags) (This)->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags) 1664 #define ICreateTypeInfo2_SetAlignment(This,cbAlignment) (This)->lpVtbl->SetAlignment(This,cbAlignment) 1665 #define ICreateTypeInfo2_SetSchema(This,pStrSchema) (This)->lpVtbl->SetSchema(This,pStrSchema) 1666 #define ICreateTypeInfo2_AddVarDesc(This,index,pVarDesc) (This)->lpVtbl->AddVarDesc(This,index,pVarDesc) 1667 #define ICreateTypeInfo2_SetFuncAndParamNames(This,index,rgszNames,cNames) (This)->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames) 1668 #define ICreateTypeInfo2_SetVarName(This,index,szName) (This)->lpVtbl->SetVarName(This,index,szName) 1669 #define ICreateTypeInfo2_SetTypeDescAlias(This,pTDescAlias) (This)->lpVtbl->SetTypeDescAlias(This,pTDescAlias) 1670 #define ICreateTypeInfo2_DefineFuncAsDllEntry(This,index,szDllName,szProcName) (This)->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName) 1671 #define ICreateTypeInfo2_SetFuncDocString(This,index,szDocString) (This)->lpVtbl->SetFuncDocString(This,index,szDocString) 1672 #define ICreateTypeInfo2_SetVarDocString(This,index,szDocString) (This)->lpVtbl->SetVarDocString(This,index,szDocString) 1673 #define ICreateTypeInfo2_SetFuncHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext) 1674 #define ICreateTypeInfo2_SetVarHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetVarHelpContext(This,index,dwHelpContext) 1675 #define ICreateTypeInfo2_SetMops(This,index,bstrMops) (This)->lpVtbl->SetMops(This,index,bstrMops) 1676 #define ICreateTypeInfo2_SetTypeIdldesc(This,pIdlDesc) (This)->lpVtbl->SetTypeIdldesc(This,pIdlDesc) 1677 #define ICreateTypeInfo2_LayOut(This) (This)->lpVtbl->LayOut(This) 1678 /*** ICreateTypeInfo2 methods ***/ 1679 #define ICreateTypeInfo2_DeleteFuncDesc(This,index) (This)->lpVtbl->DeleteFuncDesc(This,index) 1680 #define ICreateTypeInfo2_DeleteFuncDescByMemId(This,memid,invKind) (This)->lpVtbl->DeleteFuncDescByMemId(This,memid,invKind) 1681 #define ICreateTypeInfo2_DeleteVarDesc(This,index) (This)->lpVtbl->DeleteVarDesc(This,index) 1682 #define ICreateTypeInfo2_DeleteVarDescByMemId(This,memid) (This)->lpVtbl->DeleteVarDescByMemId(This,memid) 1683 #define ICreateTypeInfo2_DeleteImplType(This,index) (This)->lpVtbl->DeleteImplType(This,index) 1684 #define ICreateTypeInfo2_SetCustData(This,guid,pVarVal) (This)->lpVtbl->SetCustData(This,guid,pVarVal) 1685 #define ICreateTypeInfo2_SetFuncCustData(This,index,guid,pVarVal) (This)->lpVtbl->SetFuncCustData(This,index,guid,pVarVal) 1686 #define ICreateTypeInfo2_SetParamCustData(This,indexFunc,indexParam,guid,pVarVal) (This)->lpVtbl->SetParamCustData(This,indexFunc,indexParam,guid,pVarVal) 1687 #define ICreateTypeInfo2_SetVarCustData(This,index,guid,pVarVal) (This)->lpVtbl->SetVarCustData(This,index,guid,pVarVal) 1688 #define ICreateTypeInfo2_SetImplTypeCustData(This,index,guid,pVarVal) (This)->lpVtbl->SetImplTypeCustData(This,index,guid,pVarVal) 1689 #define ICreateTypeInfo2_SetHelpStringContext(This,dwHelpStringContext) (This)->lpVtbl->SetHelpStringContext(This,dwHelpStringContext) 1690 #define ICreateTypeInfo2_SetFuncHelpStringContext(This,index,dwHelpStringContext) (This)->lpVtbl->SetFuncHelpStringContext(This,index,dwHelpStringContext) 1691 #define ICreateTypeInfo2_SetVarHelpStringContext(This,index,dwHelpStringContext) (This)->lpVtbl->SetVarHelpStringContext(This,index,dwHelpStringContext) 1692 #define ICreateTypeInfo2_Invalidate(This) (This)->lpVtbl->Invalidate(This) 1693 #define ICreateTypeInfo2_SetName(This,szName) (This)->lpVtbl->SetName(This,szName) 1694 #else 1695 /*** IUnknown methods ***/ 1696 static FORCEINLINE HRESULT ICreateTypeInfo2_QueryInterface(ICreateTypeInfo2* This,REFIID riid,void **ppvObject) { 1697 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1698 } 1699 static FORCEINLINE ULONG ICreateTypeInfo2_AddRef(ICreateTypeInfo2* This) { 1700 return This->lpVtbl->AddRef(This); 1701 } 1702 static FORCEINLINE ULONG ICreateTypeInfo2_Release(ICreateTypeInfo2* This) { 1703 return This->lpVtbl->Release(This); 1704 } 1705 /*** ICreateTypeInfo methods ***/ 1706 static FORCEINLINE HRESULT ICreateTypeInfo2_SetGuid(ICreateTypeInfo2* This,REFGUID guid) { 1707 return This->lpVtbl->SetGuid(This,guid); 1708 } 1709 static FORCEINLINE HRESULT ICreateTypeInfo2_SetTypeFlags(ICreateTypeInfo2* This,UINT uTypeFlags) { 1710 return This->lpVtbl->SetTypeFlags(This,uTypeFlags); 1711 } 1712 static FORCEINLINE HRESULT ICreateTypeInfo2_SetDocString(ICreateTypeInfo2* This,LPOLESTR pStrDoc) { 1713 return This->lpVtbl->SetDocString(This,pStrDoc); 1714 } 1715 static FORCEINLINE HRESULT ICreateTypeInfo2_SetHelpContext(ICreateTypeInfo2* This,DWORD dwHelpContext) { 1716 return This->lpVtbl->SetHelpContext(This,dwHelpContext); 1717 } 1718 static FORCEINLINE HRESULT ICreateTypeInfo2_SetVersion(ICreateTypeInfo2* This,WORD wMajorVerNum,WORD wMinorVerNum) { 1719 return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); 1720 } 1721 static FORCEINLINE HRESULT ICreateTypeInfo2_AddRefTypeInfo(ICreateTypeInfo2* This,ITypeInfo *pTInfo,HREFTYPE *phRefType) { 1722 return This->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType); 1723 } 1724 static FORCEINLINE HRESULT ICreateTypeInfo2_AddFuncDesc(ICreateTypeInfo2* This,UINT index,FUNCDESC *pFuncDesc) { 1725 return This->lpVtbl->AddFuncDesc(This,index,pFuncDesc); 1726 } 1727 static FORCEINLINE HRESULT ICreateTypeInfo2_AddImplType(ICreateTypeInfo2* This,UINT index,HREFTYPE hRefType) { 1728 return This->lpVtbl->AddImplType(This,index,hRefType); 1729 } 1730 static FORCEINLINE HRESULT ICreateTypeInfo2_SetImplTypeFlags(ICreateTypeInfo2* This,UINT index,INT implTypeFlags) { 1731 return This->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags); 1732 } 1733 static FORCEINLINE HRESULT ICreateTypeInfo2_SetAlignment(ICreateTypeInfo2* This,WORD cbAlignment) { 1734 return This->lpVtbl->SetAlignment(This,cbAlignment); 1735 } 1736 static FORCEINLINE HRESULT ICreateTypeInfo2_SetSchema(ICreateTypeInfo2* This,LPOLESTR pStrSchema) { 1737 return This->lpVtbl->SetSchema(This,pStrSchema); 1738 } 1739 static FORCEINLINE HRESULT ICreateTypeInfo2_AddVarDesc(ICreateTypeInfo2* This,UINT index,VARDESC *pVarDesc) { 1740 return This->lpVtbl->AddVarDesc(This,index,pVarDesc); 1741 } 1742 static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncAndParamNames(ICreateTypeInfo2* This,UINT index,LPOLESTR *rgszNames,UINT cNames) { 1743 return This->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames); 1744 } 1745 static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarName(ICreateTypeInfo2* This,UINT index,LPOLESTR szName) { 1746 return This->lpVtbl->SetVarName(This,index,szName); 1747 } 1748 static FORCEINLINE HRESULT ICreateTypeInfo2_SetTypeDescAlias(ICreateTypeInfo2* This,TYPEDESC *pTDescAlias) { 1749 return This->lpVtbl->SetTypeDescAlias(This,pTDescAlias); 1750 } 1751 static FORCEINLINE HRESULT ICreateTypeInfo2_DefineFuncAsDllEntry(ICreateTypeInfo2* This,UINT index,LPOLESTR szDllName,LPOLESTR szProcName) { 1752 return This->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName); 1753 } 1754 static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncDocString(ICreateTypeInfo2* This,UINT index,LPOLESTR szDocString) { 1755 return This->lpVtbl->SetFuncDocString(This,index,szDocString); 1756 } 1757 static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarDocString(ICreateTypeInfo2* This,UINT index,LPOLESTR szDocString) { 1758 return This->lpVtbl->SetVarDocString(This,index,szDocString); 1759 } 1760 static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncHelpContext(ICreateTypeInfo2* This,UINT index,DWORD dwHelpContext) { 1761 return This->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext); 1762 } 1763 static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarHelpContext(ICreateTypeInfo2* This,UINT index,DWORD dwHelpContext) { 1764 return This->lpVtbl->SetVarHelpContext(This,index,dwHelpContext); 1765 } 1766 static FORCEINLINE HRESULT ICreateTypeInfo2_SetMops(ICreateTypeInfo2* This,UINT index,BSTR bstrMops) { 1767 return This->lpVtbl->SetMops(This,index,bstrMops); 1768 } 1769 static FORCEINLINE HRESULT ICreateTypeInfo2_SetTypeIdldesc(ICreateTypeInfo2* This,IDLDESC *pIdlDesc) { 1770 return This->lpVtbl->SetTypeIdldesc(This,pIdlDesc); 1771 } 1772 static FORCEINLINE HRESULT ICreateTypeInfo2_LayOut(ICreateTypeInfo2* This) { 1773 return This->lpVtbl->LayOut(This); 1774 } 1775 /*** ICreateTypeInfo2 methods ***/ 1776 static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteFuncDesc(ICreateTypeInfo2* This,UINT index) { 1777 return This->lpVtbl->DeleteFuncDesc(This,index); 1778 } 1779 static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteFuncDescByMemId(ICreateTypeInfo2* This,MEMBERID memid,INVOKEKIND invKind) { 1780 return This->lpVtbl->DeleteFuncDescByMemId(This,memid,invKind); 1781 } 1782 static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteVarDesc(ICreateTypeInfo2* This,UINT index) { 1783 return This->lpVtbl->DeleteVarDesc(This,index); 1784 } 1785 static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteVarDescByMemId(ICreateTypeInfo2* This,MEMBERID memid) { 1786 return This->lpVtbl->DeleteVarDescByMemId(This,memid); 1787 } 1788 static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteImplType(ICreateTypeInfo2* This,UINT index) { 1789 return This->lpVtbl->DeleteImplType(This,index); 1790 } 1791 static FORCEINLINE HRESULT ICreateTypeInfo2_SetCustData(ICreateTypeInfo2* This,REFGUID guid,VARIANT *pVarVal) { 1792 return This->lpVtbl->SetCustData(This,guid,pVarVal); 1793 } 1794 static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncCustData(ICreateTypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { 1795 return This->lpVtbl->SetFuncCustData(This,index,guid,pVarVal); 1796 } 1797 static FORCEINLINE HRESULT ICreateTypeInfo2_SetParamCustData(ICreateTypeInfo2* This,UINT indexFunc,UINT indexParam,REFGUID guid,VARIANT *pVarVal) { 1798 return This->lpVtbl->SetParamCustData(This,indexFunc,indexParam,guid,pVarVal); 1799 } 1800 static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarCustData(ICreateTypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { 1801 return This->lpVtbl->SetVarCustData(This,index,guid,pVarVal); 1802 } 1803 static FORCEINLINE HRESULT ICreateTypeInfo2_SetImplTypeCustData(ICreateTypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { 1804 return This->lpVtbl->SetImplTypeCustData(This,index,guid,pVarVal); 1805 } 1806 static FORCEINLINE HRESULT ICreateTypeInfo2_SetHelpStringContext(ICreateTypeInfo2* This,ULONG dwHelpStringContext) { 1807 return This->lpVtbl->SetHelpStringContext(This,dwHelpStringContext); 1808 } 1809 static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncHelpStringContext(ICreateTypeInfo2* This,UINT index,ULONG dwHelpStringContext) { 1810 return This->lpVtbl->SetFuncHelpStringContext(This,index,dwHelpStringContext); 1811 } 1812 static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarHelpStringContext(ICreateTypeInfo2* This,UINT index,ULONG dwHelpStringContext) { 1813 return This->lpVtbl->SetVarHelpStringContext(This,index,dwHelpStringContext); 1814 } 1815 static FORCEINLINE HRESULT ICreateTypeInfo2_Invalidate(ICreateTypeInfo2* This) { 1816 return This->lpVtbl->Invalidate(This); 1817 } 1818 static FORCEINLINE HRESULT ICreateTypeInfo2_SetName(ICreateTypeInfo2* This,LPOLESTR szName) { 1819 return This->lpVtbl->SetName(This,szName); 1820 } 1821 #endif 1822 #endif 1823 1824 #endif 1825 1826 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteFuncDesc_Proxy( 1827 ICreateTypeInfo2* This, 1828 UINT index); 1829 void __RPC_STUB ICreateTypeInfo2_DeleteFuncDesc_Stub( 1830 IRpcStubBuffer* This, 1831 IRpcChannelBuffer* pRpcChannelBuffer, 1832 PRPC_MESSAGE pRpcMessage, 1833 DWORD* pdwStubPhase); 1834 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteFuncDescByMemId_Proxy( 1835 ICreateTypeInfo2* This, 1836 MEMBERID memid, 1837 INVOKEKIND invKind); 1838 void __RPC_STUB ICreateTypeInfo2_DeleteFuncDescByMemId_Stub( 1839 IRpcStubBuffer* This, 1840 IRpcChannelBuffer* pRpcChannelBuffer, 1841 PRPC_MESSAGE pRpcMessage, 1842 DWORD* pdwStubPhase); 1843 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteVarDesc_Proxy( 1844 ICreateTypeInfo2* This, 1845 UINT index); 1846 void __RPC_STUB ICreateTypeInfo2_DeleteVarDesc_Stub( 1847 IRpcStubBuffer* This, 1848 IRpcChannelBuffer* pRpcChannelBuffer, 1849 PRPC_MESSAGE pRpcMessage, 1850 DWORD* pdwStubPhase); 1851 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteVarDescByMemId_Proxy( 1852 ICreateTypeInfo2* This, 1853 MEMBERID memid); 1854 void __RPC_STUB ICreateTypeInfo2_DeleteVarDescByMemId_Stub( 1855 IRpcStubBuffer* This, 1856 IRpcChannelBuffer* pRpcChannelBuffer, 1857 PRPC_MESSAGE pRpcMessage, 1858 DWORD* pdwStubPhase); 1859 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_DeleteImplType_Proxy( 1860 ICreateTypeInfo2* This, 1861 UINT index); 1862 void __RPC_STUB ICreateTypeInfo2_DeleteImplType_Stub( 1863 IRpcStubBuffer* This, 1864 IRpcChannelBuffer* pRpcChannelBuffer, 1865 PRPC_MESSAGE pRpcMessage, 1866 DWORD* pdwStubPhase); 1867 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetCustData_Proxy( 1868 ICreateTypeInfo2* This, 1869 REFGUID guid, 1870 VARIANT *pVarVal); 1871 void __RPC_STUB ICreateTypeInfo2_SetCustData_Stub( 1872 IRpcStubBuffer* This, 1873 IRpcChannelBuffer* pRpcChannelBuffer, 1874 PRPC_MESSAGE pRpcMessage, 1875 DWORD* pdwStubPhase); 1876 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetFuncCustData_Proxy( 1877 ICreateTypeInfo2* This, 1878 UINT index, 1879 REFGUID guid, 1880 VARIANT *pVarVal); 1881 void __RPC_STUB ICreateTypeInfo2_SetFuncCustData_Stub( 1882 IRpcStubBuffer* This, 1883 IRpcChannelBuffer* pRpcChannelBuffer, 1884 PRPC_MESSAGE pRpcMessage, 1885 DWORD* pdwStubPhase); 1886 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetParamCustData_Proxy( 1887 ICreateTypeInfo2* This, 1888 UINT indexFunc, 1889 UINT indexParam, 1890 REFGUID guid, 1891 VARIANT *pVarVal); 1892 void __RPC_STUB ICreateTypeInfo2_SetParamCustData_Stub( 1893 IRpcStubBuffer* This, 1894 IRpcChannelBuffer* pRpcChannelBuffer, 1895 PRPC_MESSAGE pRpcMessage, 1896 DWORD* pdwStubPhase); 1897 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetVarCustData_Proxy( 1898 ICreateTypeInfo2* This, 1899 UINT index, 1900 REFGUID guid, 1901 VARIANT *pVarVal); 1902 void __RPC_STUB ICreateTypeInfo2_SetVarCustData_Stub( 1903 IRpcStubBuffer* This, 1904 IRpcChannelBuffer* pRpcChannelBuffer, 1905 PRPC_MESSAGE pRpcMessage, 1906 DWORD* pdwStubPhase); 1907 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetImplTypeCustData_Proxy( 1908 ICreateTypeInfo2* This, 1909 UINT index, 1910 REFGUID guid, 1911 VARIANT *pVarVal); 1912 void __RPC_STUB ICreateTypeInfo2_SetImplTypeCustData_Stub( 1913 IRpcStubBuffer* This, 1914 IRpcChannelBuffer* pRpcChannelBuffer, 1915 PRPC_MESSAGE pRpcMessage, 1916 DWORD* pdwStubPhase); 1917 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetHelpStringContext_Proxy( 1918 ICreateTypeInfo2* This, 1919 ULONG dwHelpStringContext); 1920 void __RPC_STUB ICreateTypeInfo2_SetHelpStringContext_Stub( 1921 IRpcStubBuffer* This, 1922 IRpcChannelBuffer* pRpcChannelBuffer, 1923 PRPC_MESSAGE pRpcMessage, 1924 DWORD* pdwStubPhase); 1925 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetFuncHelpStringContext_Proxy( 1926 ICreateTypeInfo2* This, 1927 UINT index, 1928 ULONG dwHelpStringContext); 1929 void __RPC_STUB ICreateTypeInfo2_SetFuncHelpStringContext_Stub( 1930 IRpcStubBuffer* This, 1931 IRpcChannelBuffer* pRpcChannelBuffer, 1932 PRPC_MESSAGE pRpcMessage, 1933 DWORD* pdwStubPhase); 1934 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetVarHelpStringContext_Proxy( 1935 ICreateTypeInfo2* This, 1936 UINT index, 1937 ULONG dwHelpStringContext); 1938 void __RPC_STUB ICreateTypeInfo2_SetVarHelpStringContext_Stub( 1939 IRpcStubBuffer* This, 1940 IRpcChannelBuffer* pRpcChannelBuffer, 1941 PRPC_MESSAGE pRpcMessage, 1942 DWORD* pdwStubPhase); 1943 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_Invalidate_Proxy( 1944 ICreateTypeInfo2* This); 1945 void __RPC_STUB ICreateTypeInfo2_Invalidate_Stub( 1946 IRpcStubBuffer* This, 1947 IRpcChannelBuffer* pRpcChannelBuffer, 1948 PRPC_MESSAGE pRpcMessage, 1949 DWORD* pdwStubPhase); 1950 HRESULT STDMETHODCALLTYPE ICreateTypeInfo2_SetName_Proxy( 1951 ICreateTypeInfo2* This, 1952 LPOLESTR szName); 1953 void __RPC_STUB ICreateTypeInfo2_SetName_Stub( 1954 IRpcStubBuffer* This, 1955 IRpcChannelBuffer* pRpcChannelBuffer, 1956 PRPC_MESSAGE pRpcMessage, 1957 DWORD* pdwStubPhase); 1958 1959 #endif /* __ICreateTypeInfo2_INTERFACE_DEFINED__ */ 1960 1961 1962 /***************************************************************************** 1963 * ICreateTypeLib interface 1964 */ 1965 #ifndef __ICreateTypeLib_INTERFACE_DEFINED__ 1966 #define __ICreateTypeLib_INTERFACE_DEFINED__ 1967 1968 typedef ICreateTypeLib *LPCREATETYPELIB; 1969 1970 DEFINE_GUID(IID_ICreateTypeLib, 0x00020406, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1971 #if defined(__cplusplus) && !defined(CINTERFACE) 1972 MIDL_INTERFACE("00020406-0000-0000-c000-000000000046") 1973 ICreateTypeLib : public IUnknown 1974 { 1975 virtual HRESULT STDMETHODCALLTYPE CreateTypeInfo( 1976 LPOLESTR szName, 1977 TYPEKIND tkind, 1978 ICreateTypeInfo **ppCTInfo) = 0; 1979 1980 virtual HRESULT STDMETHODCALLTYPE SetName( 1981 LPOLESTR szName) = 0; 1982 1983 virtual HRESULT STDMETHODCALLTYPE SetVersion( 1984 WORD wMajorVerNum, 1985 WORD wMinorVerNum) = 0; 1986 1987 virtual HRESULT STDMETHODCALLTYPE SetGuid( 1988 REFGUID guid) = 0; 1989 1990 virtual HRESULT STDMETHODCALLTYPE SetDocString( 1991 LPOLESTR szDoc) = 0; 1992 1993 virtual HRESULT STDMETHODCALLTYPE SetHelpFileName( 1994 LPOLESTR szHelpFileName) = 0; 1995 1996 virtual HRESULT STDMETHODCALLTYPE SetHelpContext( 1997 DWORD dwHelpContext) = 0; 1998 1999 virtual HRESULT STDMETHODCALLTYPE SetLcid( 2000 LCID lcid) = 0; 2001 2002 virtual HRESULT STDMETHODCALLTYPE SetLibFlags( 2003 UINT uLibFlags) = 0; 2004 2005 virtual HRESULT STDMETHODCALLTYPE SaveAllChanges( 2006 ) = 0; 2007 2008 }; 2009 #ifdef __CRT_UUID_DECL 2010 __CRT_UUID_DECL(ICreateTypeLib, 0x00020406, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2011 #endif 2012 #else 2013 typedef struct ICreateTypeLibVtbl { 2014 BEGIN_INTERFACE 2015 2016 /*** IUnknown methods ***/ 2017 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2018 ICreateTypeLib* This, 2019 REFIID riid, 2020 void **ppvObject); 2021 2022 ULONG (STDMETHODCALLTYPE *AddRef)( 2023 ICreateTypeLib* This); 2024 2025 ULONG (STDMETHODCALLTYPE *Release)( 2026 ICreateTypeLib* This); 2027 2028 /*** ICreateTypeLib methods ***/ 2029 HRESULT (STDMETHODCALLTYPE *CreateTypeInfo)( 2030 ICreateTypeLib* This, 2031 LPOLESTR szName, 2032 TYPEKIND tkind, 2033 ICreateTypeInfo **ppCTInfo); 2034 2035 HRESULT (STDMETHODCALLTYPE *SetName)( 2036 ICreateTypeLib* This, 2037 LPOLESTR szName); 2038 2039 HRESULT (STDMETHODCALLTYPE *SetVersion)( 2040 ICreateTypeLib* This, 2041 WORD wMajorVerNum, 2042 WORD wMinorVerNum); 2043 2044 HRESULT (STDMETHODCALLTYPE *SetGuid)( 2045 ICreateTypeLib* This, 2046 REFGUID guid); 2047 2048 HRESULT (STDMETHODCALLTYPE *SetDocString)( 2049 ICreateTypeLib* This, 2050 LPOLESTR szDoc); 2051 2052 HRESULT (STDMETHODCALLTYPE *SetHelpFileName)( 2053 ICreateTypeLib* This, 2054 LPOLESTR szHelpFileName); 2055 2056 HRESULT (STDMETHODCALLTYPE *SetHelpContext)( 2057 ICreateTypeLib* This, 2058 DWORD dwHelpContext); 2059 2060 HRESULT (STDMETHODCALLTYPE *SetLcid)( 2061 ICreateTypeLib* This, 2062 LCID lcid); 2063 2064 HRESULT (STDMETHODCALLTYPE *SetLibFlags)( 2065 ICreateTypeLib* This, 2066 UINT uLibFlags); 2067 2068 HRESULT (STDMETHODCALLTYPE *SaveAllChanges)( 2069 ICreateTypeLib* This); 2070 2071 END_INTERFACE 2072 } ICreateTypeLibVtbl; 2073 interface ICreateTypeLib { 2074 CONST_VTBL ICreateTypeLibVtbl* lpVtbl; 2075 }; 2076 2077 #ifdef COBJMACROS 2078 #ifndef WIDL_C_INLINE_WRAPPERS 2079 /*** IUnknown methods ***/ 2080 #define ICreateTypeLib_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2081 #define ICreateTypeLib_AddRef(This) (This)->lpVtbl->AddRef(This) 2082 #define ICreateTypeLib_Release(This) (This)->lpVtbl->Release(This) 2083 /*** ICreateTypeLib methods ***/ 2084 #define ICreateTypeLib_CreateTypeInfo(This,szName,tkind,ppCTInfo) (This)->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo) 2085 #define ICreateTypeLib_SetName(This,szName) (This)->lpVtbl->SetName(This,szName) 2086 #define ICreateTypeLib_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) 2087 #define ICreateTypeLib_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) 2088 #define ICreateTypeLib_SetDocString(This,szDoc) (This)->lpVtbl->SetDocString(This,szDoc) 2089 #define ICreateTypeLib_SetHelpFileName(This,szHelpFileName) (This)->lpVtbl->SetHelpFileName(This,szHelpFileName) 2090 #define ICreateTypeLib_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) 2091 #define ICreateTypeLib_SetLcid(This,lcid) (This)->lpVtbl->SetLcid(This,lcid) 2092 #define ICreateTypeLib_SetLibFlags(This,uLibFlags) (This)->lpVtbl->SetLibFlags(This,uLibFlags) 2093 #define ICreateTypeLib_SaveAllChanges(This) (This)->lpVtbl->SaveAllChanges(This) 2094 #else 2095 /*** IUnknown methods ***/ 2096 static FORCEINLINE HRESULT ICreateTypeLib_QueryInterface(ICreateTypeLib* This,REFIID riid,void **ppvObject) { 2097 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2098 } 2099 static FORCEINLINE ULONG ICreateTypeLib_AddRef(ICreateTypeLib* This) { 2100 return This->lpVtbl->AddRef(This); 2101 } 2102 static FORCEINLINE ULONG ICreateTypeLib_Release(ICreateTypeLib* This) { 2103 return This->lpVtbl->Release(This); 2104 } 2105 /*** ICreateTypeLib methods ***/ 2106 static FORCEINLINE HRESULT ICreateTypeLib_CreateTypeInfo(ICreateTypeLib* This,LPOLESTR szName,TYPEKIND tkind,ICreateTypeInfo **ppCTInfo) { 2107 return This->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo); 2108 } 2109 static FORCEINLINE HRESULT ICreateTypeLib_SetName(ICreateTypeLib* This,LPOLESTR szName) { 2110 return This->lpVtbl->SetName(This,szName); 2111 } 2112 static FORCEINLINE HRESULT ICreateTypeLib_SetVersion(ICreateTypeLib* This,WORD wMajorVerNum,WORD wMinorVerNum) { 2113 return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); 2114 } 2115 static FORCEINLINE HRESULT ICreateTypeLib_SetGuid(ICreateTypeLib* This,REFGUID guid) { 2116 return This->lpVtbl->SetGuid(This,guid); 2117 } 2118 static FORCEINLINE HRESULT ICreateTypeLib_SetDocString(ICreateTypeLib* This,LPOLESTR szDoc) { 2119 return This->lpVtbl->SetDocString(This,szDoc); 2120 } 2121 static FORCEINLINE HRESULT ICreateTypeLib_SetHelpFileName(ICreateTypeLib* This,LPOLESTR szHelpFileName) { 2122 return This->lpVtbl->SetHelpFileName(This,szHelpFileName); 2123 } 2124 static FORCEINLINE HRESULT ICreateTypeLib_SetHelpContext(ICreateTypeLib* This,DWORD dwHelpContext) { 2125 return This->lpVtbl->SetHelpContext(This,dwHelpContext); 2126 } 2127 static FORCEINLINE HRESULT ICreateTypeLib_SetLcid(ICreateTypeLib* This,LCID lcid) { 2128 return This->lpVtbl->SetLcid(This,lcid); 2129 } 2130 static FORCEINLINE HRESULT ICreateTypeLib_SetLibFlags(ICreateTypeLib* This,UINT uLibFlags) { 2131 return This->lpVtbl->SetLibFlags(This,uLibFlags); 2132 } 2133 static FORCEINLINE HRESULT ICreateTypeLib_SaveAllChanges(ICreateTypeLib* This) { 2134 return This->lpVtbl->SaveAllChanges(This); 2135 } 2136 #endif 2137 #endif 2138 2139 #endif 2140 2141 HRESULT STDMETHODCALLTYPE ICreateTypeLib_CreateTypeInfo_Proxy( 2142 ICreateTypeLib* This, 2143 LPOLESTR szName, 2144 TYPEKIND tkind, 2145 ICreateTypeInfo **ppCTInfo); 2146 void __RPC_STUB ICreateTypeLib_CreateTypeInfo_Stub( 2147 IRpcStubBuffer* This, 2148 IRpcChannelBuffer* pRpcChannelBuffer, 2149 PRPC_MESSAGE pRpcMessage, 2150 DWORD* pdwStubPhase); 2151 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetName_Proxy( 2152 ICreateTypeLib* This, 2153 LPOLESTR szName); 2154 void __RPC_STUB ICreateTypeLib_SetName_Stub( 2155 IRpcStubBuffer* This, 2156 IRpcChannelBuffer* pRpcChannelBuffer, 2157 PRPC_MESSAGE pRpcMessage, 2158 DWORD* pdwStubPhase); 2159 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetVersion_Proxy( 2160 ICreateTypeLib* This, 2161 WORD wMajorVerNum, 2162 WORD wMinorVerNum); 2163 void __RPC_STUB ICreateTypeLib_SetVersion_Stub( 2164 IRpcStubBuffer* This, 2165 IRpcChannelBuffer* pRpcChannelBuffer, 2166 PRPC_MESSAGE pRpcMessage, 2167 DWORD* pdwStubPhase); 2168 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetGuid_Proxy( 2169 ICreateTypeLib* This, 2170 REFGUID guid); 2171 void __RPC_STUB ICreateTypeLib_SetGuid_Stub( 2172 IRpcStubBuffer* This, 2173 IRpcChannelBuffer* pRpcChannelBuffer, 2174 PRPC_MESSAGE pRpcMessage, 2175 DWORD* pdwStubPhase); 2176 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetDocString_Proxy( 2177 ICreateTypeLib* This, 2178 LPOLESTR szDoc); 2179 void __RPC_STUB ICreateTypeLib_SetDocString_Stub( 2180 IRpcStubBuffer* This, 2181 IRpcChannelBuffer* pRpcChannelBuffer, 2182 PRPC_MESSAGE pRpcMessage, 2183 DWORD* pdwStubPhase); 2184 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetHelpFileName_Proxy( 2185 ICreateTypeLib* This, 2186 LPOLESTR szHelpFileName); 2187 void __RPC_STUB ICreateTypeLib_SetHelpFileName_Stub( 2188 IRpcStubBuffer* This, 2189 IRpcChannelBuffer* pRpcChannelBuffer, 2190 PRPC_MESSAGE pRpcMessage, 2191 DWORD* pdwStubPhase); 2192 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetHelpContext_Proxy( 2193 ICreateTypeLib* This, 2194 DWORD dwHelpContext); 2195 void __RPC_STUB ICreateTypeLib_SetHelpContext_Stub( 2196 IRpcStubBuffer* This, 2197 IRpcChannelBuffer* pRpcChannelBuffer, 2198 PRPC_MESSAGE pRpcMessage, 2199 DWORD* pdwStubPhase); 2200 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetLcid_Proxy( 2201 ICreateTypeLib* This, 2202 LCID lcid); 2203 void __RPC_STUB ICreateTypeLib_SetLcid_Stub( 2204 IRpcStubBuffer* This, 2205 IRpcChannelBuffer* pRpcChannelBuffer, 2206 PRPC_MESSAGE pRpcMessage, 2207 DWORD* pdwStubPhase); 2208 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SetLibFlags_Proxy( 2209 ICreateTypeLib* This, 2210 UINT uLibFlags); 2211 void __RPC_STUB ICreateTypeLib_SetLibFlags_Stub( 2212 IRpcStubBuffer* This, 2213 IRpcChannelBuffer* pRpcChannelBuffer, 2214 PRPC_MESSAGE pRpcMessage, 2215 DWORD* pdwStubPhase); 2216 HRESULT STDMETHODCALLTYPE ICreateTypeLib_SaveAllChanges_Proxy( 2217 ICreateTypeLib* This); 2218 void __RPC_STUB ICreateTypeLib_SaveAllChanges_Stub( 2219 IRpcStubBuffer* This, 2220 IRpcChannelBuffer* pRpcChannelBuffer, 2221 PRPC_MESSAGE pRpcMessage, 2222 DWORD* pdwStubPhase); 2223 2224 #endif /* __ICreateTypeLib_INTERFACE_DEFINED__ */ 2225 2226 2227 /***************************************************************************** 2228 * ICreateTypeLib2 interface 2229 */ 2230 #ifndef __ICreateTypeLib2_INTERFACE_DEFINED__ 2231 #define __ICreateTypeLib2_INTERFACE_DEFINED__ 2232 2233 typedef ICreateTypeLib2 *LPCREATETYPELIB2; 2234 DEFINE_GUID(IID_ICreateTypeLib2, 0x0002040f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2235 #if defined(__cplusplus) && !defined(CINTERFACE) 2236 MIDL_INTERFACE("0002040f-0000-0000-c000-000000000046") 2237 ICreateTypeLib2 : public ICreateTypeLib 2238 { 2239 virtual HRESULT STDMETHODCALLTYPE DeleteTypeInfo( 2240 LPOLESTR szName) = 0; 2241 2242 virtual HRESULT STDMETHODCALLTYPE SetCustData( 2243 REFGUID guid, 2244 VARIANT *pVarVal) = 0; 2245 2246 virtual HRESULT STDMETHODCALLTYPE SetHelpStringContext( 2247 ULONG dwHelpStringContext) = 0; 2248 2249 virtual HRESULT STDMETHODCALLTYPE SetHelpStringDll( 2250 LPOLESTR szFileName) = 0; 2251 2252 }; 2253 #ifdef __CRT_UUID_DECL 2254 __CRT_UUID_DECL(ICreateTypeLib2, 0x0002040f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2255 #endif 2256 #else 2257 typedef struct ICreateTypeLib2Vtbl { 2258 BEGIN_INTERFACE 2259 2260 /*** IUnknown methods ***/ 2261 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2262 ICreateTypeLib2* This, 2263 REFIID riid, 2264 void **ppvObject); 2265 2266 ULONG (STDMETHODCALLTYPE *AddRef)( 2267 ICreateTypeLib2* This); 2268 2269 ULONG (STDMETHODCALLTYPE *Release)( 2270 ICreateTypeLib2* This); 2271 2272 /*** ICreateTypeLib methods ***/ 2273 HRESULT (STDMETHODCALLTYPE *CreateTypeInfo)( 2274 ICreateTypeLib2* This, 2275 LPOLESTR szName, 2276 TYPEKIND tkind, 2277 ICreateTypeInfo **ppCTInfo); 2278 2279 HRESULT (STDMETHODCALLTYPE *SetName)( 2280 ICreateTypeLib2* This, 2281 LPOLESTR szName); 2282 2283 HRESULT (STDMETHODCALLTYPE *SetVersion)( 2284 ICreateTypeLib2* This, 2285 WORD wMajorVerNum, 2286 WORD wMinorVerNum); 2287 2288 HRESULT (STDMETHODCALLTYPE *SetGuid)( 2289 ICreateTypeLib2* This, 2290 REFGUID guid); 2291 2292 HRESULT (STDMETHODCALLTYPE *SetDocString)( 2293 ICreateTypeLib2* This, 2294 LPOLESTR szDoc); 2295 2296 HRESULT (STDMETHODCALLTYPE *SetHelpFileName)( 2297 ICreateTypeLib2* This, 2298 LPOLESTR szHelpFileName); 2299 2300 HRESULT (STDMETHODCALLTYPE *SetHelpContext)( 2301 ICreateTypeLib2* This, 2302 DWORD dwHelpContext); 2303 2304 HRESULT (STDMETHODCALLTYPE *SetLcid)( 2305 ICreateTypeLib2* This, 2306 LCID lcid); 2307 2308 HRESULT (STDMETHODCALLTYPE *SetLibFlags)( 2309 ICreateTypeLib2* This, 2310 UINT uLibFlags); 2311 2312 HRESULT (STDMETHODCALLTYPE *SaveAllChanges)( 2313 ICreateTypeLib2* This); 2314 2315 /*** ICreateTypeLib2 methods ***/ 2316 HRESULT (STDMETHODCALLTYPE *DeleteTypeInfo)( 2317 ICreateTypeLib2* This, 2318 LPOLESTR szName); 2319 2320 HRESULT (STDMETHODCALLTYPE *SetCustData)( 2321 ICreateTypeLib2* This, 2322 REFGUID guid, 2323 VARIANT *pVarVal); 2324 2325 HRESULT (STDMETHODCALLTYPE *SetHelpStringContext)( 2326 ICreateTypeLib2* This, 2327 ULONG dwHelpStringContext); 2328 2329 HRESULT (STDMETHODCALLTYPE *SetHelpStringDll)( 2330 ICreateTypeLib2* This, 2331 LPOLESTR szFileName); 2332 2333 END_INTERFACE 2334 } ICreateTypeLib2Vtbl; 2335 interface ICreateTypeLib2 { 2336 CONST_VTBL ICreateTypeLib2Vtbl* lpVtbl; 2337 }; 2338 2339 #ifdef COBJMACROS 2340 #ifndef WIDL_C_INLINE_WRAPPERS 2341 /*** IUnknown methods ***/ 2342 #define ICreateTypeLib2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2343 #define ICreateTypeLib2_AddRef(This) (This)->lpVtbl->AddRef(This) 2344 #define ICreateTypeLib2_Release(This) (This)->lpVtbl->Release(This) 2345 /*** ICreateTypeLib methods ***/ 2346 #define ICreateTypeLib2_CreateTypeInfo(This,szName,tkind,ppCTInfo) (This)->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo) 2347 #define ICreateTypeLib2_SetName(This,szName) (This)->lpVtbl->SetName(This,szName) 2348 #define ICreateTypeLib2_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) 2349 #define ICreateTypeLib2_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) 2350 #define ICreateTypeLib2_SetDocString(This,szDoc) (This)->lpVtbl->SetDocString(This,szDoc) 2351 #define ICreateTypeLib2_SetHelpFileName(This,szHelpFileName) (This)->lpVtbl->SetHelpFileName(This,szHelpFileName) 2352 #define ICreateTypeLib2_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) 2353 #define ICreateTypeLib2_SetLcid(This,lcid) (This)->lpVtbl->SetLcid(This,lcid) 2354 #define ICreateTypeLib2_SetLibFlags(This,uLibFlags) (This)->lpVtbl->SetLibFlags(This,uLibFlags) 2355 #define ICreateTypeLib2_SaveAllChanges(This) (This)->lpVtbl->SaveAllChanges(This) 2356 /*** ICreateTypeLib2 methods ***/ 2357 #define ICreateTypeLib2_DeleteTypeInfo(This,szName) (This)->lpVtbl->DeleteTypeInfo(This,szName) 2358 #define ICreateTypeLib2_SetCustData(This,guid,pVarVal) (This)->lpVtbl->SetCustData(This,guid,pVarVal) 2359 #define ICreateTypeLib2_SetHelpStringContext(This,dwHelpStringContext) (This)->lpVtbl->SetHelpStringContext(This,dwHelpStringContext) 2360 #define ICreateTypeLib2_SetHelpStringDll(This,szFileName) (This)->lpVtbl->SetHelpStringDll(This,szFileName) 2361 #else 2362 /*** IUnknown methods ***/ 2363 static FORCEINLINE HRESULT ICreateTypeLib2_QueryInterface(ICreateTypeLib2* This,REFIID riid,void **ppvObject) { 2364 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2365 } 2366 static FORCEINLINE ULONG ICreateTypeLib2_AddRef(ICreateTypeLib2* This) { 2367 return This->lpVtbl->AddRef(This); 2368 } 2369 static FORCEINLINE ULONG ICreateTypeLib2_Release(ICreateTypeLib2* This) { 2370 return This->lpVtbl->Release(This); 2371 } 2372 /*** ICreateTypeLib methods ***/ 2373 static FORCEINLINE HRESULT ICreateTypeLib2_CreateTypeInfo(ICreateTypeLib2* This,LPOLESTR szName,TYPEKIND tkind,ICreateTypeInfo **ppCTInfo) { 2374 return This->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo); 2375 } 2376 static FORCEINLINE HRESULT ICreateTypeLib2_SetName(ICreateTypeLib2* This,LPOLESTR szName) { 2377 return This->lpVtbl->SetName(This,szName); 2378 } 2379 static FORCEINLINE HRESULT ICreateTypeLib2_SetVersion(ICreateTypeLib2* This,WORD wMajorVerNum,WORD wMinorVerNum) { 2380 return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); 2381 } 2382 static FORCEINLINE HRESULT ICreateTypeLib2_SetGuid(ICreateTypeLib2* This,REFGUID guid) { 2383 return This->lpVtbl->SetGuid(This,guid); 2384 } 2385 static FORCEINLINE HRESULT ICreateTypeLib2_SetDocString(ICreateTypeLib2* This,LPOLESTR szDoc) { 2386 return This->lpVtbl->SetDocString(This,szDoc); 2387 } 2388 static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpFileName(ICreateTypeLib2* This,LPOLESTR szHelpFileName) { 2389 return This->lpVtbl->SetHelpFileName(This,szHelpFileName); 2390 } 2391 static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpContext(ICreateTypeLib2* This,DWORD dwHelpContext) { 2392 return This->lpVtbl->SetHelpContext(This,dwHelpContext); 2393 } 2394 static FORCEINLINE HRESULT ICreateTypeLib2_SetLcid(ICreateTypeLib2* This,LCID lcid) { 2395 return This->lpVtbl->SetLcid(This,lcid); 2396 } 2397 static FORCEINLINE HRESULT ICreateTypeLib2_SetLibFlags(ICreateTypeLib2* This,UINT uLibFlags) { 2398 return This->lpVtbl->SetLibFlags(This,uLibFlags); 2399 } 2400 static FORCEINLINE HRESULT ICreateTypeLib2_SaveAllChanges(ICreateTypeLib2* This) { 2401 return This->lpVtbl->SaveAllChanges(This); 2402 } 2403 /*** ICreateTypeLib2 methods ***/ 2404 static FORCEINLINE HRESULT ICreateTypeLib2_DeleteTypeInfo(ICreateTypeLib2* This,LPOLESTR szName) { 2405 return This->lpVtbl->DeleteTypeInfo(This,szName); 2406 } 2407 static FORCEINLINE HRESULT ICreateTypeLib2_SetCustData(ICreateTypeLib2* This,REFGUID guid,VARIANT *pVarVal) { 2408 return This->lpVtbl->SetCustData(This,guid,pVarVal); 2409 } 2410 static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpStringContext(ICreateTypeLib2* This,ULONG dwHelpStringContext) { 2411 return This->lpVtbl->SetHelpStringContext(This,dwHelpStringContext); 2412 } 2413 static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpStringDll(ICreateTypeLib2* This,LPOLESTR szFileName) { 2414 return This->lpVtbl->SetHelpStringDll(This,szFileName); 2415 } 2416 #endif 2417 #endif 2418 2419 #endif 2420 2421 HRESULT STDMETHODCALLTYPE ICreateTypeLib2_DeleteTypeInfo_Proxy( 2422 ICreateTypeLib2* This, 2423 LPOLESTR szName); 2424 void __RPC_STUB ICreateTypeLib2_DeleteTypeInfo_Stub( 2425 IRpcStubBuffer* This, 2426 IRpcChannelBuffer* pRpcChannelBuffer, 2427 PRPC_MESSAGE pRpcMessage, 2428 DWORD* pdwStubPhase); 2429 HRESULT STDMETHODCALLTYPE ICreateTypeLib2_SetCustData_Proxy( 2430 ICreateTypeLib2* This, 2431 REFGUID guid, 2432 VARIANT *pVarVal); 2433 void __RPC_STUB ICreateTypeLib2_SetCustData_Stub( 2434 IRpcStubBuffer* This, 2435 IRpcChannelBuffer* pRpcChannelBuffer, 2436 PRPC_MESSAGE pRpcMessage, 2437 DWORD* pdwStubPhase); 2438 HRESULT STDMETHODCALLTYPE ICreateTypeLib2_SetHelpStringContext_Proxy( 2439 ICreateTypeLib2* This, 2440 ULONG dwHelpStringContext); 2441 void __RPC_STUB ICreateTypeLib2_SetHelpStringContext_Stub( 2442 IRpcStubBuffer* This, 2443 IRpcChannelBuffer* pRpcChannelBuffer, 2444 PRPC_MESSAGE pRpcMessage, 2445 DWORD* pdwStubPhase); 2446 HRESULT STDMETHODCALLTYPE ICreateTypeLib2_SetHelpStringDll_Proxy( 2447 ICreateTypeLib2* This, 2448 LPOLESTR szFileName); 2449 void __RPC_STUB ICreateTypeLib2_SetHelpStringDll_Stub( 2450 IRpcStubBuffer* This, 2451 IRpcChannelBuffer* pRpcChannelBuffer, 2452 PRPC_MESSAGE pRpcMessage, 2453 DWORD* pdwStubPhase); 2454 2455 #endif /* __ICreateTypeLib2_INTERFACE_DEFINED__ */ 2456 2457 #endif 2458 2459 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 2460 /***************************************************************************** 2461 * IDispatch interface 2462 */ 2463 #ifndef __IDispatch_INTERFACE_DEFINED__ 2464 #define __IDispatch_INTERFACE_DEFINED__ 2465 2466 typedef IDispatch *LPDISPATCH; 2467 2468 2469 #define DISPID_UNKNOWN (-1) 2470 2471 #define DISPID_VALUE (0) 2472 2473 #define DISPID_PROPERTYPUT (-3) 2474 2475 #define DISPID_NEWENUM (-4) 2476 2477 #define DISPID_EVALUATE (-5) 2478 2479 #define DISPID_CONSTRUCTOR (-6) 2480 2481 #define DISPID_DESTRUCTOR (-7) 2482 2483 #define DISPID_COLLECT (-8) 2484 2485 2486 DEFINE_GUID(IID_IDispatch, 0x00020400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2487 #if defined(__cplusplus) && !defined(CINTERFACE) 2488 MIDL_INTERFACE("00020400-0000-0000-c000-000000000046") 2489 IDispatch : public IUnknown 2490 { 2491 virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount( 2492 UINT *pctinfo) = 0; 2493 2494 virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( 2495 UINT iTInfo, 2496 LCID lcid, 2497 ITypeInfo **ppTInfo) = 0; 2498 2499 virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames( 2500 REFIID riid, 2501 LPOLESTR *rgszNames, 2502 UINT cNames, 2503 LCID lcid, 2504 DISPID *rgDispId) = 0; 2505 2506 virtual HRESULT STDMETHODCALLTYPE Invoke( 2507 DISPID dispIdMember, 2508 REFIID riid, 2509 LCID lcid, 2510 WORD wFlags, 2511 DISPPARAMS *pDispParams, 2512 VARIANT *pVarResult, 2513 EXCEPINFO *pExcepInfo, 2514 UINT *puArgErr) = 0; 2515 2516 }; 2517 #ifdef __CRT_UUID_DECL 2518 __CRT_UUID_DECL(IDispatch, 0x00020400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2519 #endif 2520 #else 2521 typedef struct IDispatchVtbl { 2522 BEGIN_INTERFACE 2523 2524 /*** IUnknown methods ***/ 2525 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2526 IDispatch* This, 2527 REFIID riid, 2528 void **ppvObject); 2529 2530 ULONG (STDMETHODCALLTYPE *AddRef)( 2531 IDispatch* This); 2532 2533 ULONG (STDMETHODCALLTYPE *Release)( 2534 IDispatch* This); 2535 2536 /*** IDispatch methods ***/ 2537 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 2538 IDispatch* This, 2539 UINT *pctinfo); 2540 2541 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 2542 IDispatch* This, 2543 UINT iTInfo, 2544 LCID lcid, 2545 ITypeInfo **ppTInfo); 2546 2547 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 2548 IDispatch* This, 2549 REFIID riid, 2550 LPOLESTR *rgszNames, 2551 UINT cNames, 2552 LCID lcid, 2553 DISPID *rgDispId); 2554 2555 HRESULT (STDMETHODCALLTYPE *Invoke)( 2556 IDispatch* This, 2557 DISPID dispIdMember, 2558 REFIID riid, 2559 LCID lcid, 2560 WORD wFlags, 2561 DISPPARAMS *pDispParams, 2562 VARIANT *pVarResult, 2563 EXCEPINFO *pExcepInfo, 2564 UINT *puArgErr); 2565 2566 END_INTERFACE 2567 } IDispatchVtbl; 2568 interface IDispatch { 2569 CONST_VTBL IDispatchVtbl* lpVtbl; 2570 }; 2571 2572 #ifdef COBJMACROS 2573 #ifndef WIDL_C_INLINE_WRAPPERS 2574 /*** IUnknown methods ***/ 2575 #define IDispatch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2576 #define IDispatch_AddRef(This) (This)->lpVtbl->AddRef(This) 2577 #define IDispatch_Release(This) (This)->lpVtbl->Release(This) 2578 /*** IDispatch methods ***/ 2579 #define IDispatch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2580 #define IDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2581 #define IDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2582 #define IDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2583 #else 2584 /*** IUnknown methods ***/ 2585 static FORCEINLINE HRESULT IDispatch_QueryInterface(IDispatch* This,REFIID riid,void **ppvObject) { 2586 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2587 } 2588 static FORCEINLINE ULONG IDispatch_AddRef(IDispatch* This) { 2589 return This->lpVtbl->AddRef(This); 2590 } 2591 static FORCEINLINE ULONG IDispatch_Release(IDispatch* This) { 2592 return This->lpVtbl->Release(This); 2593 } 2594 /*** IDispatch methods ***/ 2595 static FORCEINLINE HRESULT IDispatch_GetTypeInfoCount(IDispatch* This,UINT *pctinfo) { 2596 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2597 } 2598 static FORCEINLINE HRESULT IDispatch_GetTypeInfo(IDispatch* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2599 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2600 } 2601 static FORCEINLINE HRESULT IDispatch_GetIDsOfNames(IDispatch* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2602 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2603 } 2604 static FORCEINLINE HRESULT IDispatch_Invoke(IDispatch* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2605 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2606 } 2607 #endif 2608 #endif 2609 2610 #endif 2611 2612 HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfoCount_Proxy( 2613 IDispatch* This, 2614 UINT *pctinfo); 2615 void __RPC_STUB IDispatch_GetTypeInfoCount_Stub( 2616 IRpcStubBuffer* This, 2617 IRpcChannelBuffer* pRpcChannelBuffer, 2618 PRPC_MESSAGE pRpcMessage, 2619 DWORD* pdwStubPhase); 2620 HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfo_Proxy( 2621 IDispatch* This, 2622 UINT iTInfo, 2623 LCID lcid, 2624 ITypeInfo **ppTInfo); 2625 void __RPC_STUB IDispatch_GetTypeInfo_Stub( 2626 IRpcStubBuffer* This, 2627 IRpcChannelBuffer* pRpcChannelBuffer, 2628 PRPC_MESSAGE pRpcMessage, 2629 DWORD* pdwStubPhase); 2630 HRESULT STDMETHODCALLTYPE IDispatch_GetIDsOfNames_Proxy( 2631 IDispatch* This, 2632 REFIID riid, 2633 LPOLESTR *rgszNames, 2634 UINT cNames, 2635 LCID lcid, 2636 DISPID *rgDispId); 2637 void __RPC_STUB IDispatch_GetIDsOfNames_Stub( 2638 IRpcStubBuffer* This, 2639 IRpcChannelBuffer* pRpcChannelBuffer, 2640 PRPC_MESSAGE pRpcMessage, 2641 DWORD* pdwStubPhase); 2642 HRESULT STDMETHODCALLTYPE IDispatch_RemoteInvoke_Proxy( 2643 IDispatch* This, 2644 DISPID dispIdMember, 2645 REFIID riid, 2646 LCID lcid, 2647 DWORD dwFlags, 2648 DISPPARAMS *pDispParams, 2649 VARIANT *pVarResult, 2650 EXCEPINFO *pExcepInfo, 2651 UINT *pArgErr, 2652 UINT cVarRef, 2653 UINT *rgVarRefIdx, 2654 VARIANTARG *rgVarRef); 2655 void __RPC_STUB IDispatch_RemoteInvoke_Stub( 2656 IRpcStubBuffer* This, 2657 IRpcChannelBuffer* pRpcChannelBuffer, 2658 PRPC_MESSAGE pRpcMessage, 2659 DWORD* pdwStubPhase); 2660 HRESULT CALLBACK IDispatch_Invoke_Proxy( 2661 IDispatch* This, 2662 DISPID dispIdMember, 2663 REFIID riid, 2664 LCID lcid, 2665 WORD wFlags, 2666 DISPPARAMS *pDispParams, 2667 VARIANT *pVarResult, 2668 EXCEPINFO *pExcepInfo, 2669 UINT *puArgErr); 2670 HRESULT __RPC_STUB IDispatch_Invoke_Stub( 2671 IDispatch* This, 2672 DISPID dispIdMember, 2673 REFIID riid, 2674 LCID lcid, 2675 DWORD dwFlags, 2676 DISPPARAMS *pDispParams, 2677 VARIANT *pVarResult, 2678 EXCEPINFO *pExcepInfo, 2679 UINT *pArgErr, 2680 UINT cVarRef, 2681 UINT *rgVarRefIdx, 2682 VARIANTARG *rgVarRef); 2683 2684 #endif /* __IDispatch_INTERFACE_DEFINED__ */ 2685 2686 2687 /***************************************************************************** 2688 * IEnumVARIANT interface 2689 */ 2690 #ifndef __IEnumVARIANT_INTERFACE_DEFINED__ 2691 #define __IEnumVARIANT_INTERFACE_DEFINED__ 2692 2693 typedef IEnumVARIANT *LPENUMVARIANT; 2694 2695 DEFINE_GUID(IID_IEnumVARIANT, 0x00020404, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2696 #if defined(__cplusplus) && !defined(CINTERFACE) 2697 MIDL_INTERFACE("00020404-0000-0000-c000-000000000046") 2698 IEnumVARIANT : public IUnknown 2699 { 2700 virtual HRESULT STDMETHODCALLTYPE Next( 2701 ULONG celt, 2702 VARIANT *rgVar, 2703 ULONG *pCeltFetched) = 0; 2704 2705 virtual HRESULT STDMETHODCALLTYPE Skip( 2706 ULONG celt) = 0; 2707 2708 virtual HRESULT STDMETHODCALLTYPE Reset( 2709 ) = 0; 2710 2711 virtual HRESULT STDMETHODCALLTYPE Clone( 2712 IEnumVARIANT **ppEnum) = 0; 2713 2714 }; 2715 #ifdef __CRT_UUID_DECL 2716 __CRT_UUID_DECL(IEnumVARIANT, 0x00020404, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2717 #endif 2718 #else 2719 typedef struct IEnumVARIANTVtbl { 2720 BEGIN_INTERFACE 2721 2722 /*** IUnknown methods ***/ 2723 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2724 IEnumVARIANT* This, 2725 REFIID riid, 2726 void **ppvObject); 2727 2728 ULONG (STDMETHODCALLTYPE *AddRef)( 2729 IEnumVARIANT* This); 2730 2731 ULONG (STDMETHODCALLTYPE *Release)( 2732 IEnumVARIANT* This); 2733 2734 /*** IEnumVARIANT methods ***/ 2735 HRESULT (STDMETHODCALLTYPE *Next)( 2736 IEnumVARIANT* This, 2737 ULONG celt, 2738 VARIANT *rgVar, 2739 ULONG *pCeltFetched); 2740 2741 HRESULT (STDMETHODCALLTYPE *Skip)( 2742 IEnumVARIANT* This, 2743 ULONG celt); 2744 2745 HRESULT (STDMETHODCALLTYPE *Reset)( 2746 IEnumVARIANT* This); 2747 2748 HRESULT (STDMETHODCALLTYPE *Clone)( 2749 IEnumVARIANT* This, 2750 IEnumVARIANT **ppEnum); 2751 2752 END_INTERFACE 2753 } IEnumVARIANTVtbl; 2754 interface IEnumVARIANT { 2755 CONST_VTBL IEnumVARIANTVtbl* lpVtbl; 2756 }; 2757 2758 #ifdef COBJMACROS 2759 #ifndef WIDL_C_INLINE_WRAPPERS 2760 /*** IUnknown methods ***/ 2761 #define IEnumVARIANT_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2762 #define IEnumVARIANT_AddRef(This) (This)->lpVtbl->AddRef(This) 2763 #define IEnumVARIANT_Release(This) (This)->lpVtbl->Release(This) 2764 /*** IEnumVARIANT methods ***/ 2765 #define IEnumVARIANT_Next(This,celt,rgVar,pCeltFetched) (This)->lpVtbl->Next(This,celt,rgVar,pCeltFetched) 2766 #define IEnumVARIANT_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 2767 #define IEnumVARIANT_Reset(This) (This)->lpVtbl->Reset(This) 2768 #define IEnumVARIANT_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 2769 #else 2770 /*** IUnknown methods ***/ 2771 static FORCEINLINE HRESULT IEnumVARIANT_QueryInterface(IEnumVARIANT* This,REFIID riid,void **ppvObject) { 2772 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2773 } 2774 static FORCEINLINE ULONG IEnumVARIANT_AddRef(IEnumVARIANT* This) { 2775 return This->lpVtbl->AddRef(This); 2776 } 2777 static FORCEINLINE ULONG IEnumVARIANT_Release(IEnumVARIANT* This) { 2778 return This->lpVtbl->Release(This); 2779 } 2780 /*** IEnumVARIANT methods ***/ 2781 static FORCEINLINE HRESULT IEnumVARIANT_Next(IEnumVARIANT* This,ULONG celt,VARIANT *rgVar,ULONG *pCeltFetched) { 2782 return This->lpVtbl->Next(This,celt,rgVar,pCeltFetched); 2783 } 2784 static FORCEINLINE HRESULT IEnumVARIANT_Skip(IEnumVARIANT* This,ULONG celt) { 2785 return This->lpVtbl->Skip(This,celt); 2786 } 2787 static FORCEINLINE HRESULT IEnumVARIANT_Reset(IEnumVARIANT* This) { 2788 return This->lpVtbl->Reset(This); 2789 } 2790 static FORCEINLINE HRESULT IEnumVARIANT_Clone(IEnumVARIANT* This,IEnumVARIANT **ppEnum) { 2791 return This->lpVtbl->Clone(This,ppEnum); 2792 } 2793 #endif 2794 #endif 2795 2796 #endif 2797 2798 HRESULT STDMETHODCALLTYPE IEnumVARIANT_RemoteNext_Proxy( 2799 IEnumVARIANT* This, 2800 ULONG celt, 2801 VARIANT *rgVar, 2802 ULONG *pCeltFetched); 2803 void __RPC_STUB IEnumVARIANT_RemoteNext_Stub( 2804 IRpcStubBuffer* This, 2805 IRpcChannelBuffer* pRpcChannelBuffer, 2806 PRPC_MESSAGE pRpcMessage, 2807 DWORD* pdwStubPhase); 2808 HRESULT STDMETHODCALLTYPE IEnumVARIANT_Skip_Proxy( 2809 IEnumVARIANT* This, 2810 ULONG celt); 2811 void __RPC_STUB IEnumVARIANT_Skip_Stub( 2812 IRpcStubBuffer* This, 2813 IRpcChannelBuffer* pRpcChannelBuffer, 2814 PRPC_MESSAGE pRpcMessage, 2815 DWORD* pdwStubPhase); 2816 HRESULT STDMETHODCALLTYPE IEnumVARIANT_Reset_Proxy( 2817 IEnumVARIANT* This); 2818 void __RPC_STUB IEnumVARIANT_Reset_Stub( 2819 IRpcStubBuffer* This, 2820 IRpcChannelBuffer* pRpcChannelBuffer, 2821 PRPC_MESSAGE pRpcMessage, 2822 DWORD* pdwStubPhase); 2823 HRESULT STDMETHODCALLTYPE IEnumVARIANT_Clone_Proxy( 2824 IEnumVARIANT* This, 2825 IEnumVARIANT **ppEnum); 2826 void __RPC_STUB IEnumVARIANT_Clone_Stub( 2827 IRpcStubBuffer* This, 2828 IRpcChannelBuffer* pRpcChannelBuffer, 2829 PRPC_MESSAGE pRpcMessage, 2830 DWORD* pdwStubPhase); 2831 HRESULT CALLBACK IEnumVARIANT_Next_Proxy( 2832 IEnumVARIANT* This, 2833 ULONG celt, 2834 VARIANT *rgVar, 2835 ULONG *pCeltFetched); 2836 HRESULT __RPC_STUB IEnumVARIANT_Next_Stub( 2837 IEnumVARIANT* This, 2838 ULONG celt, 2839 VARIANT *rgVar, 2840 ULONG *pCeltFetched); 2841 2842 #endif /* __IEnumVARIANT_INTERFACE_DEFINED__ */ 2843 2844 2845 /***************************************************************************** 2846 * ITypeComp interface 2847 */ 2848 #ifndef __ITypeComp_INTERFACE_DEFINED__ 2849 #define __ITypeComp_INTERFACE_DEFINED__ 2850 2851 typedef ITypeComp *LPTYPECOMP; 2852 2853 typedef enum tagDESCKIND { 2854 DESCKIND_NONE = 0, 2855 DESCKIND_FUNCDESC = 1, 2856 DESCKIND_VARDESC = 2, 2857 DESCKIND_TYPECOMP = 3, 2858 DESCKIND_IMPLICITAPPOBJ = 4, 2859 DESCKIND_MAX = 5 2860 } DESCKIND; 2861 2862 typedef union tagBINDPTR { 2863 FUNCDESC *lpfuncdesc; 2864 VARDESC *lpvardesc; 2865 ITypeComp *lptcomp; 2866 } BINDPTR; 2867 typedef union tagBINDPTR *LPBINDPTR; 2868 2869 DEFINE_GUID(IID_ITypeComp, 0x00020403, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2870 #if defined(__cplusplus) && !defined(CINTERFACE) 2871 MIDL_INTERFACE("00020403-0000-0000-c000-000000000046") 2872 ITypeComp : public IUnknown 2873 { 2874 virtual HRESULT STDMETHODCALLTYPE Bind( 2875 LPOLESTR szName, 2876 ULONG lHashVal, 2877 WORD wFlags, 2878 ITypeInfo **ppTInfo, 2879 DESCKIND *pDescKind, 2880 BINDPTR *pBindPtr) = 0; 2881 2882 virtual HRESULT STDMETHODCALLTYPE BindType( 2883 LPOLESTR szName, 2884 ULONG lHashVal, 2885 ITypeInfo **ppTInfo, 2886 ITypeComp **ppTComp) = 0; 2887 2888 }; 2889 #ifdef __CRT_UUID_DECL 2890 __CRT_UUID_DECL(ITypeComp, 0x00020403, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2891 #endif 2892 #else 2893 typedef struct ITypeCompVtbl { 2894 BEGIN_INTERFACE 2895 2896 /*** IUnknown methods ***/ 2897 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2898 ITypeComp* This, 2899 REFIID riid, 2900 void **ppvObject); 2901 2902 ULONG (STDMETHODCALLTYPE *AddRef)( 2903 ITypeComp* This); 2904 2905 ULONG (STDMETHODCALLTYPE *Release)( 2906 ITypeComp* This); 2907 2908 /*** ITypeComp methods ***/ 2909 HRESULT (STDMETHODCALLTYPE *Bind)( 2910 ITypeComp* This, 2911 LPOLESTR szName, 2912 ULONG lHashVal, 2913 WORD wFlags, 2914 ITypeInfo **ppTInfo, 2915 DESCKIND *pDescKind, 2916 BINDPTR *pBindPtr); 2917 2918 HRESULT (STDMETHODCALLTYPE *BindType)( 2919 ITypeComp* This, 2920 LPOLESTR szName, 2921 ULONG lHashVal, 2922 ITypeInfo **ppTInfo, 2923 ITypeComp **ppTComp); 2924 2925 END_INTERFACE 2926 } ITypeCompVtbl; 2927 interface ITypeComp { 2928 CONST_VTBL ITypeCompVtbl* lpVtbl; 2929 }; 2930 2931 #ifdef COBJMACROS 2932 #ifndef WIDL_C_INLINE_WRAPPERS 2933 /*** IUnknown methods ***/ 2934 #define ITypeComp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2935 #define ITypeComp_AddRef(This) (This)->lpVtbl->AddRef(This) 2936 #define ITypeComp_Release(This) (This)->lpVtbl->Release(This) 2937 /*** ITypeComp methods ***/ 2938 #define ITypeComp_Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr) (This)->lpVtbl->Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr) 2939 #define ITypeComp_BindType(This,szName,lHashVal,ppTInfo,ppTComp) (This)->lpVtbl->BindType(This,szName,lHashVal,ppTInfo,ppTComp) 2940 #else 2941 /*** IUnknown methods ***/ 2942 static FORCEINLINE HRESULT ITypeComp_QueryInterface(ITypeComp* This,REFIID riid,void **ppvObject) { 2943 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2944 } 2945 static FORCEINLINE ULONG ITypeComp_AddRef(ITypeComp* This) { 2946 return This->lpVtbl->AddRef(This); 2947 } 2948 static FORCEINLINE ULONG ITypeComp_Release(ITypeComp* This) { 2949 return This->lpVtbl->Release(This); 2950 } 2951 /*** ITypeComp methods ***/ 2952 static FORCEINLINE HRESULT ITypeComp_Bind(ITypeComp* This,LPOLESTR szName,ULONG lHashVal,WORD wFlags,ITypeInfo **ppTInfo,DESCKIND *pDescKind,BINDPTR *pBindPtr) { 2953 return This->lpVtbl->Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr); 2954 } 2955 static FORCEINLINE HRESULT ITypeComp_BindType(ITypeComp* This,LPOLESTR szName,ULONG lHashVal,ITypeInfo **ppTInfo,ITypeComp **ppTComp) { 2956 return This->lpVtbl->BindType(This,szName,lHashVal,ppTInfo,ppTComp); 2957 } 2958 #endif 2959 #endif 2960 2961 #endif 2962 2963 HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBind_Proxy( 2964 ITypeComp* This, 2965 LPOLESTR szName, 2966 ULONG lHashVal, 2967 WORD wFlags, 2968 ITypeInfo **ppTInfo, 2969 DESCKIND *pDescKind, 2970 LPFUNCDESC *ppFuncDesc, 2971 LPVARDESC *ppVarDesc, 2972 ITypeComp **ppTypeComp, 2973 CLEANLOCALSTORAGE *pDummy); 2974 void __RPC_STUB ITypeComp_RemoteBind_Stub( 2975 IRpcStubBuffer* This, 2976 IRpcChannelBuffer* pRpcChannelBuffer, 2977 PRPC_MESSAGE pRpcMessage, 2978 DWORD* pdwStubPhase); 2979 HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBindType_Proxy( 2980 ITypeComp* This, 2981 LPOLESTR szName, 2982 ULONG lHashVal, 2983 ITypeInfo **ppTInfo); 2984 void __RPC_STUB ITypeComp_RemoteBindType_Stub( 2985 IRpcStubBuffer* This, 2986 IRpcChannelBuffer* pRpcChannelBuffer, 2987 PRPC_MESSAGE pRpcMessage, 2988 DWORD* pdwStubPhase); 2989 HRESULT CALLBACK ITypeComp_Bind_Proxy( 2990 ITypeComp* This, 2991 LPOLESTR szName, 2992 ULONG lHashVal, 2993 WORD wFlags, 2994 ITypeInfo **ppTInfo, 2995 DESCKIND *pDescKind, 2996 BINDPTR *pBindPtr); 2997 HRESULT __RPC_STUB ITypeComp_Bind_Stub( 2998 ITypeComp* This, 2999 LPOLESTR szName, 3000 ULONG lHashVal, 3001 WORD wFlags, 3002 ITypeInfo **ppTInfo, 3003 DESCKIND *pDescKind, 3004 LPFUNCDESC *ppFuncDesc, 3005 LPVARDESC *ppVarDesc, 3006 ITypeComp **ppTypeComp, 3007 CLEANLOCALSTORAGE *pDummy); 3008 HRESULT CALLBACK ITypeComp_BindType_Proxy( 3009 ITypeComp* This, 3010 LPOLESTR szName, 3011 ULONG lHashVal, 3012 ITypeInfo **ppTInfo, 3013 ITypeComp **ppTComp); 3014 HRESULT __RPC_STUB ITypeComp_BindType_Stub( 3015 ITypeComp* This, 3016 LPOLESTR szName, 3017 ULONG lHashVal, 3018 ITypeInfo **ppTInfo); 3019 3020 #endif /* __ITypeComp_INTERFACE_DEFINED__ */ 3021 3022 #endif 3023 3024 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 3025 /***************************************************************************** 3026 * ITypeInfo interface 3027 */ 3028 #ifndef __ITypeInfo_INTERFACE_DEFINED__ 3029 #define __ITypeInfo_INTERFACE_DEFINED__ 3030 3031 typedef ITypeInfo *LPTYPEINFO; 3032 3033 DEFINE_GUID(IID_ITypeInfo, 0x00020401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 3034 #if defined(__cplusplus) && !defined(CINTERFACE) 3035 MIDL_INTERFACE("00020401-0000-0000-c000-000000000046") 3036 ITypeInfo : public IUnknown 3037 { 3038 virtual HRESULT STDMETHODCALLTYPE GetTypeAttr( 3039 TYPEATTR **ppTypeAttr) = 0; 3040 3041 virtual HRESULT STDMETHODCALLTYPE GetTypeComp( 3042 ITypeComp **ppTComp) = 0; 3043 3044 virtual HRESULT STDMETHODCALLTYPE GetFuncDesc( 3045 UINT index, 3046 FUNCDESC **ppFuncDesc) = 0; 3047 3048 virtual HRESULT STDMETHODCALLTYPE GetVarDesc( 3049 UINT index, 3050 VARDESC **ppVarDesc) = 0; 3051 3052 virtual HRESULT STDMETHODCALLTYPE GetNames( 3053 MEMBERID memid, 3054 BSTR *rgBstrNames, 3055 UINT cMaxNames, 3056 UINT *pcNames) = 0; 3057 3058 virtual HRESULT STDMETHODCALLTYPE GetRefTypeOfImplType( 3059 UINT index, 3060 HREFTYPE *pRefType) = 0; 3061 3062 virtual HRESULT STDMETHODCALLTYPE GetImplTypeFlags( 3063 UINT index, 3064 INT *pImplTypeFlags) = 0; 3065 3066 virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames( 3067 LPOLESTR *rgszNames, 3068 UINT cNames, 3069 MEMBERID *pMemId) = 0; 3070 3071 virtual HRESULT STDMETHODCALLTYPE Invoke( 3072 PVOID pvInstance, 3073 MEMBERID memid, 3074 WORD wFlags, 3075 DISPPARAMS *pDispParams, 3076 VARIANT *pVarResult, 3077 EXCEPINFO *pExcepInfo, 3078 UINT *puArgErr) = 0; 3079 3080 virtual HRESULT STDMETHODCALLTYPE GetDocumentation( 3081 MEMBERID memid, 3082 BSTR *pBstrName, 3083 BSTR *pBstrDocString, 3084 DWORD *pdwHelpContext, 3085 BSTR *pBstrHelpFile) = 0; 3086 3087 virtual HRESULT STDMETHODCALLTYPE GetDllEntry( 3088 MEMBERID memid, 3089 INVOKEKIND invKind, 3090 BSTR *pBstrDllName, 3091 BSTR *pBstrName, 3092 WORD *pwOrdinal) = 0; 3093 3094 virtual HRESULT STDMETHODCALLTYPE GetRefTypeInfo( 3095 HREFTYPE hRefType, 3096 ITypeInfo **ppTInfo) = 0; 3097 3098 virtual HRESULT STDMETHODCALLTYPE AddressOfMember( 3099 MEMBERID memid, 3100 INVOKEKIND invKind, 3101 PVOID *ppv) = 0; 3102 3103 virtual HRESULT STDMETHODCALLTYPE CreateInstance( 3104 IUnknown *pUnkOuter, 3105 REFIID riid, 3106 PVOID *ppvObj) = 0; 3107 3108 virtual HRESULT STDMETHODCALLTYPE GetMops( 3109 MEMBERID memid, 3110 BSTR *pBstrMops) = 0; 3111 3112 virtual HRESULT STDMETHODCALLTYPE GetContainingTypeLib( 3113 ITypeLib **ppTLib, 3114 UINT *pIndex) = 0; 3115 3116 virtual void STDMETHODCALLTYPE ReleaseTypeAttr( 3117 TYPEATTR *pTypeAttr) = 0; 3118 3119 virtual void STDMETHODCALLTYPE ReleaseFuncDesc( 3120 FUNCDESC *pFuncDesc) = 0; 3121 3122 virtual void STDMETHODCALLTYPE ReleaseVarDesc( 3123 VARDESC *pVarDesc) = 0; 3124 3125 }; 3126 #ifdef __CRT_UUID_DECL 3127 __CRT_UUID_DECL(ITypeInfo, 0x00020401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 3128 #endif 3129 #else 3130 typedef struct ITypeInfoVtbl { 3131 BEGIN_INTERFACE 3132 3133 /*** IUnknown methods ***/ 3134 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3135 ITypeInfo* This, 3136 REFIID riid, 3137 void **ppvObject); 3138 3139 ULONG (STDMETHODCALLTYPE *AddRef)( 3140 ITypeInfo* This); 3141 3142 ULONG (STDMETHODCALLTYPE *Release)( 3143 ITypeInfo* This); 3144 3145 /*** ITypeInfo methods ***/ 3146 HRESULT (STDMETHODCALLTYPE *GetTypeAttr)( 3147 ITypeInfo* This, 3148 TYPEATTR **ppTypeAttr); 3149 3150 HRESULT (STDMETHODCALLTYPE *GetTypeComp)( 3151 ITypeInfo* This, 3152 ITypeComp **ppTComp); 3153 3154 HRESULT (STDMETHODCALLTYPE *GetFuncDesc)( 3155 ITypeInfo* This, 3156 UINT index, 3157 FUNCDESC **ppFuncDesc); 3158 3159 HRESULT (STDMETHODCALLTYPE *GetVarDesc)( 3160 ITypeInfo* This, 3161 UINT index, 3162 VARDESC **ppVarDesc); 3163 3164 HRESULT (STDMETHODCALLTYPE *GetNames)( 3165 ITypeInfo* This, 3166 MEMBERID memid, 3167 BSTR *rgBstrNames, 3168 UINT cMaxNames, 3169 UINT *pcNames); 3170 3171 HRESULT (STDMETHODCALLTYPE *GetRefTypeOfImplType)( 3172 ITypeInfo* This, 3173 UINT index, 3174 HREFTYPE *pRefType); 3175 3176 HRESULT (STDMETHODCALLTYPE *GetImplTypeFlags)( 3177 ITypeInfo* This, 3178 UINT index, 3179 INT *pImplTypeFlags); 3180 3181 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 3182 ITypeInfo* This, 3183 LPOLESTR *rgszNames, 3184 UINT cNames, 3185 MEMBERID *pMemId); 3186 3187 HRESULT (STDMETHODCALLTYPE *Invoke)( 3188 ITypeInfo* This, 3189 PVOID pvInstance, 3190 MEMBERID memid, 3191 WORD wFlags, 3192 DISPPARAMS *pDispParams, 3193 VARIANT *pVarResult, 3194 EXCEPINFO *pExcepInfo, 3195 UINT *puArgErr); 3196 3197 HRESULT (STDMETHODCALLTYPE *GetDocumentation)( 3198 ITypeInfo* This, 3199 MEMBERID memid, 3200 BSTR *pBstrName, 3201 BSTR *pBstrDocString, 3202 DWORD *pdwHelpContext, 3203 BSTR *pBstrHelpFile); 3204 3205 HRESULT (STDMETHODCALLTYPE *GetDllEntry)( 3206 ITypeInfo* This, 3207 MEMBERID memid, 3208 INVOKEKIND invKind, 3209 BSTR *pBstrDllName, 3210 BSTR *pBstrName, 3211 WORD *pwOrdinal); 3212 3213 HRESULT (STDMETHODCALLTYPE *GetRefTypeInfo)( 3214 ITypeInfo* This, 3215 HREFTYPE hRefType, 3216 ITypeInfo **ppTInfo); 3217 3218 HRESULT (STDMETHODCALLTYPE *AddressOfMember)( 3219 ITypeInfo* This, 3220 MEMBERID memid, 3221 INVOKEKIND invKind, 3222 PVOID *ppv); 3223 3224 HRESULT (STDMETHODCALLTYPE *CreateInstance)( 3225 ITypeInfo* This, 3226 IUnknown *pUnkOuter, 3227 REFIID riid, 3228 PVOID *ppvObj); 3229 3230 HRESULT (STDMETHODCALLTYPE *GetMops)( 3231 ITypeInfo* This, 3232 MEMBERID memid, 3233 BSTR *pBstrMops); 3234 3235 HRESULT (STDMETHODCALLTYPE *GetContainingTypeLib)( 3236 ITypeInfo* This, 3237 ITypeLib **ppTLib, 3238 UINT *pIndex); 3239 3240 void (STDMETHODCALLTYPE *ReleaseTypeAttr)( 3241 ITypeInfo* This, 3242 TYPEATTR *pTypeAttr); 3243 3244 void (STDMETHODCALLTYPE *ReleaseFuncDesc)( 3245 ITypeInfo* This, 3246 FUNCDESC *pFuncDesc); 3247 3248 void (STDMETHODCALLTYPE *ReleaseVarDesc)( 3249 ITypeInfo* This, 3250 VARDESC *pVarDesc); 3251 3252 END_INTERFACE 3253 } ITypeInfoVtbl; 3254 interface ITypeInfo { 3255 CONST_VTBL ITypeInfoVtbl* lpVtbl; 3256 }; 3257 3258 #ifdef COBJMACROS 3259 #ifndef WIDL_C_INLINE_WRAPPERS 3260 /*** IUnknown methods ***/ 3261 #define ITypeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3262 #define ITypeInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 3263 #define ITypeInfo_Release(This) (This)->lpVtbl->Release(This) 3264 /*** ITypeInfo methods ***/ 3265 #define ITypeInfo_GetTypeAttr(This,ppTypeAttr) (This)->lpVtbl->GetTypeAttr(This,ppTypeAttr) 3266 #define ITypeInfo_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) 3267 #define ITypeInfo_GetFuncDesc(This,index,ppFuncDesc) (This)->lpVtbl->GetFuncDesc(This,index,ppFuncDesc) 3268 #define ITypeInfo_GetVarDesc(This,index,ppVarDesc) (This)->lpVtbl->GetVarDesc(This,index,ppVarDesc) 3269 #define ITypeInfo_GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) (This)->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) 3270 #define ITypeInfo_GetRefTypeOfImplType(This,index,pRefType) (This)->lpVtbl->GetRefTypeOfImplType(This,index,pRefType) 3271 #define ITypeInfo_GetImplTypeFlags(This,index,pImplTypeFlags) (This)->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags) 3272 #define ITypeInfo_GetIDsOfNames(This,rgszNames,cNames,pMemId) (This)->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId) 3273 #define ITypeInfo_Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 3274 #define ITypeInfo_GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) 3275 #define ITypeInfo_GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) (This)->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) 3276 #define ITypeInfo_GetRefTypeInfo(This,hRefType,ppTInfo) (This)->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo) 3277 #define ITypeInfo_AddressOfMember(This,memid,invKind,ppv) (This)->lpVtbl->AddressOfMember(This,memid,invKind,ppv) 3278 #define ITypeInfo_CreateInstance(This,pUnkOuter,riid,ppvObj) (This)->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj) 3279 #define ITypeInfo_GetMops(This,memid,pBstrMops) (This)->lpVtbl->GetMops(This,memid,pBstrMops) 3280 #define ITypeInfo_GetContainingTypeLib(This,ppTLib,pIndex) (This)->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex) 3281 #define ITypeInfo_ReleaseTypeAttr(This,pTypeAttr) (This)->lpVtbl->ReleaseTypeAttr(This,pTypeAttr) 3282 #define ITypeInfo_ReleaseFuncDesc(This,pFuncDesc) (This)->lpVtbl->ReleaseFuncDesc(This,pFuncDesc) 3283 #define ITypeInfo_ReleaseVarDesc(This,pVarDesc) (This)->lpVtbl->ReleaseVarDesc(This,pVarDesc) 3284 #else 3285 /*** IUnknown methods ***/ 3286 static FORCEINLINE HRESULT ITypeInfo_QueryInterface(ITypeInfo* This,REFIID riid,void **ppvObject) { 3287 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3288 } 3289 static FORCEINLINE ULONG ITypeInfo_AddRef(ITypeInfo* This) { 3290 return This->lpVtbl->AddRef(This); 3291 } 3292 static FORCEINLINE ULONG ITypeInfo_Release(ITypeInfo* This) { 3293 return This->lpVtbl->Release(This); 3294 } 3295 /*** ITypeInfo methods ***/ 3296 static FORCEINLINE HRESULT ITypeInfo_GetTypeAttr(ITypeInfo* This,TYPEATTR **ppTypeAttr) { 3297 return This->lpVtbl->GetTypeAttr(This,ppTypeAttr); 3298 } 3299 static FORCEINLINE HRESULT ITypeInfo_GetTypeComp(ITypeInfo* This,ITypeComp **ppTComp) { 3300 return This->lpVtbl->GetTypeComp(This,ppTComp); 3301 } 3302 static FORCEINLINE HRESULT ITypeInfo_GetFuncDesc(ITypeInfo* This,UINT index,FUNCDESC **ppFuncDesc) { 3303 return This->lpVtbl->GetFuncDesc(This,index,ppFuncDesc); 3304 } 3305 static FORCEINLINE HRESULT ITypeInfo_GetVarDesc(ITypeInfo* This,UINT index,VARDESC **ppVarDesc) { 3306 return This->lpVtbl->GetVarDesc(This,index,ppVarDesc); 3307 } 3308 static FORCEINLINE HRESULT ITypeInfo_GetNames(ITypeInfo* This,MEMBERID memid,BSTR *rgBstrNames,UINT cMaxNames,UINT *pcNames) { 3309 return This->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames); 3310 } 3311 static FORCEINLINE HRESULT ITypeInfo_GetRefTypeOfImplType(ITypeInfo* This,UINT index,HREFTYPE *pRefType) { 3312 return This->lpVtbl->GetRefTypeOfImplType(This,index,pRefType); 3313 } 3314 static FORCEINLINE HRESULT ITypeInfo_GetImplTypeFlags(ITypeInfo* This,UINT index,INT *pImplTypeFlags) { 3315 return This->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags); 3316 } 3317 static FORCEINLINE HRESULT ITypeInfo_GetIDsOfNames(ITypeInfo* This,LPOLESTR *rgszNames,UINT cNames,MEMBERID *pMemId) { 3318 return This->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId); 3319 } 3320 static FORCEINLINE HRESULT ITypeInfo_Invoke(ITypeInfo* This,PVOID pvInstance,MEMBERID memid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 3321 return This->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 3322 } 3323 static FORCEINLINE HRESULT ITypeInfo_GetDocumentation(ITypeInfo* This,MEMBERID memid,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { 3324 return This->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); 3325 } 3326 static FORCEINLINE HRESULT ITypeInfo_GetDllEntry(ITypeInfo* This,MEMBERID memid,INVOKEKIND invKind,BSTR *pBstrDllName,BSTR *pBstrName,WORD *pwOrdinal) { 3327 return This->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal); 3328 } 3329 static FORCEINLINE HRESULT ITypeInfo_GetRefTypeInfo(ITypeInfo* This,HREFTYPE hRefType,ITypeInfo **ppTInfo) { 3330 return This->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo); 3331 } 3332 static FORCEINLINE HRESULT ITypeInfo_AddressOfMember(ITypeInfo* This,MEMBERID memid,INVOKEKIND invKind,PVOID *ppv) { 3333 return This->lpVtbl->AddressOfMember(This,memid,invKind,ppv); 3334 } 3335 static FORCEINLINE HRESULT ITypeInfo_CreateInstance(ITypeInfo* This,IUnknown *pUnkOuter,REFIID riid,PVOID *ppvObj) { 3336 return This->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj); 3337 } 3338 static FORCEINLINE HRESULT ITypeInfo_GetMops(ITypeInfo* This,MEMBERID memid,BSTR *pBstrMops) { 3339 return This->lpVtbl->GetMops(This,memid,pBstrMops); 3340 } 3341 static FORCEINLINE HRESULT ITypeInfo_GetContainingTypeLib(ITypeInfo* This,ITypeLib **ppTLib,UINT *pIndex) { 3342 return This->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex); 3343 } 3344 static FORCEINLINE void ITypeInfo_ReleaseTypeAttr(ITypeInfo* This,TYPEATTR *pTypeAttr) { 3345 This->lpVtbl->ReleaseTypeAttr(This,pTypeAttr); 3346 } 3347 static FORCEINLINE void ITypeInfo_ReleaseFuncDesc(ITypeInfo* This,FUNCDESC *pFuncDesc) { 3348 This->lpVtbl->ReleaseFuncDesc(This,pFuncDesc); 3349 } 3350 static FORCEINLINE void ITypeInfo_ReleaseVarDesc(ITypeInfo* This,VARDESC *pVarDesc) { 3351 This->lpVtbl->ReleaseVarDesc(This,pVarDesc); 3352 } 3353 #endif 3354 #endif 3355 3356 #endif 3357 3358 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetTypeAttr_Proxy( 3359 ITypeInfo* This, 3360 LPTYPEATTR *ppTypeAttr, 3361 CLEANLOCALSTORAGE *pDummy); 3362 void __RPC_STUB ITypeInfo_RemoteGetTypeAttr_Stub( 3363 IRpcStubBuffer* This, 3364 IRpcChannelBuffer* pRpcChannelBuffer, 3365 PRPC_MESSAGE pRpcMessage, 3366 DWORD* pdwStubPhase); 3367 HRESULT STDMETHODCALLTYPE ITypeInfo_GetTypeComp_Proxy( 3368 ITypeInfo* This, 3369 ITypeComp **ppTComp); 3370 void __RPC_STUB ITypeInfo_GetTypeComp_Stub( 3371 IRpcStubBuffer* This, 3372 IRpcChannelBuffer* pRpcChannelBuffer, 3373 PRPC_MESSAGE pRpcMessage, 3374 DWORD* pdwStubPhase); 3375 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetFuncDesc_Proxy( 3376 ITypeInfo* This, 3377 UINT index, 3378 LPFUNCDESC *ppFuncDesc, 3379 CLEANLOCALSTORAGE *pDummy); 3380 void __RPC_STUB ITypeInfo_RemoteGetFuncDesc_Stub( 3381 IRpcStubBuffer* This, 3382 IRpcChannelBuffer* pRpcChannelBuffer, 3383 PRPC_MESSAGE pRpcMessage, 3384 DWORD* pdwStubPhase); 3385 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetVarDesc_Proxy( 3386 ITypeInfo* This, 3387 UINT index, 3388 LPVARDESC *ppVarDesc, 3389 CLEANLOCALSTORAGE *pDummy); 3390 void __RPC_STUB ITypeInfo_RemoteGetVarDesc_Stub( 3391 IRpcStubBuffer* This, 3392 IRpcChannelBuffer* pRpcChannelBuffer, 3393 PRPC_MESSAGE pRpcMessage, 3394 DWORD* pdwStubPhase); 3395 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetNames_Proxy( 3396 ITypeInfo* This, 3397 MEMBERID memid, 3398 BSTR *rgBstrNames, 3399 UINT cMaxNames, 3400 UINT *pcNames); 3401 void __RPC_STUB ITypeInfo_RemoteGetNames_Stub( 3402 IRpcStubBuffer* This, 3403 IRpcChannelBuffer* pRpcChannelBuffer, 3404 PRPC_MESSAGE pRpcMessage, 3405 DWORD* pdwStubPhase); 3406 HRESULT STDMETHODCALLTYPE ITypeInfo_GetRefTypeOfImplType_Proxy( 3407 ITypeInfo* This, 3408 UINT index, 3409 HREFTYPE *pRefType); 3410 void __RPC_STUB ITypeInfo_GetRefTypeOfImplType_Stub( 3411 IRpcStubBuffer* This, 3412 IRpcChannelBuffer* pRpcChannelBuffer, 3413 PRPC_MESSAGE pRpcMessage, 3414 DWORD* pdwStubPhase); 3415 HRESULT STDMETHODCALLTYPE ITypeInfo_GetImplTypeFlags_Proxy( 3416 ITypeInfo* This, 3417 UINT index, 3418 INT *pImplTypeFlags); 3419 void __RPC_STUB ITypeInfo_GetImplTypeFlags_Stub( 3420 IRpcStubBuffer* This, 3421 IRpcChannelBuffer* pRpcChannelBuffer, 3422 PRPC_MESSAGE pRpcMessage, 3423 DWORD* pdwStubPhase); 3424 HRESULT STDMETHODCALLTYPE ITypeInfo_LocalGetIDsOfNames_Proxy( 3425 ITypeInfo* This); 3426 void __RPC_STUB ITypeInfo_LocalGetIDsOfNames_Stub( 3427 IRpcStubBuffer* This, 3428 IRpcChannelBuffer* pRpcChannelBuffer, 3429 PRPC_MESSAGE pRpcMessage, 3430 DWORD* pdwStubPhase); 3431 HRESULT STDMETHODCALLTYPE ITypeInfo_LocalInvoke_Proxy( 3432 ITypeInfo* This); 3433 void __RPC_STUB ITypeInfo_LocalInvoke_Stub( 3434 IRpcStubBuffer* This, 3435 IRpcChannelBuffer* pRpcChannelBuffer, 3436 PRPC_MESSAGE pRpcMessage, 3437 DWORD* pdwStubPhase); 3438 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDocumentation_Proxy( 3439 ITypeInfo* This, 3440 MEMBERID memid, 3441 DWORD refPtrFlags, 3442 BSTR *pBstrName, 3443 BSTR *pBstrDocString, 3444 DWORD *pdwHelpContext, 3445 BSTR *pBstrHelpFile); 3446 void __RPC_STUB ITypeInfo_RemoteGetDocumentation_Stub( 3447 IRpcStubBuffer* This, 3448 IRpcChannelBuffer* pRpcChannelBuffer, 3449 PRPC_MESSAGE pRpcMessage, 3450 DWORD* pdwStubPhase); 3451 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDllEntry_Proxy( 3452 ITypeInfo* This, 3453 MEMBERID memid, 3454 INVOKEKIND invKind, 3455 DWORD refPtrFlags, 3456 BSTR *pBstrDllName, 3457 BSTR *pBstrName, 3458 WORD *pwOrdinal); 3459 void __RPC_STUB ITypeInfo_RemoteGetDllEntry_Stub( 3460 IRpcStubBuffer* This, 3461 IRpcChannelBuffer* pRpcChannelBuffer, 3462 PRPC_MESSAGE pRpcMessage, 3463 DWORD* pdwStubPhase); 3464 HRESULT STDMETHODCALLTYPE ITypeInfo_GetRefTypeInfo_Proxy( 3465 ITypeInfo* This, 3466 HREFTYPE hRefType, 3467 ITypeInfo **ppTInfo); 3468 void __RPC_STUB ITypeInfo_GetRefTypeInfo_Stub( 3469 IRpcStubBuffer* This, 3470 IRpcChannelBuffer* pRpcChannelBuffer, 3471 PRPC_MESSAGE pRpcMessage, 3472 DWORD* pdwStubPhase); 3473 HRESULT STDMETHODCALLTYPE ITypeInfo_LocalAddressOfMember_Proxy( 3474 ITypeInfo* This); 3475 void __RPC_STUB ITypeInfo_LocalAddressOfMember_Stub( 3476 IRpcStubBuffer* This, 3477 IRpcChannelBuffer* pRpcChannelBuffer, 3478 PRPC_MESSAGE pRpcMessage, 3479 DWORD* pdwStubPhase); 3480 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteCreateInstance_Proxy( 3481 ITypeInfo* This, 3482 REFIID riid, 3483 IUnknown **ppvObj); 3484 void __RPC_STUB ITypeInfo_RemoteCreateInstance_Stub( 3485 IRpcStubBuffer* This, 3486 IRpcChannelBuffer* pRpcChannelBuffer, 3487 PRPC_MESSAGE pRpcMessage, 3488 DWORD* pdwStubPhase); 3489 HRESULT STDMETHODCALLTYPE ITypeInfo_GetMops_Proxy( 3490 ITypeInfo* This, 3491 MEMBERID memid, 3492 BSTR *pBstrMops); 3493 void __RPC_STUB ITypeInfo_GetMops_Stub( 3494 IRpcStubBuffer* This, 3495 IRpcChannelBuffer* pRpcChannelBuffer, 3496 PRPC_MESSAGE pRpcMessage, 3497 DWORD* pdwStubPhase); 3498 HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetContainingTypeLib_Proxy( 3499 ITypeInfo* This, 3500 ITypeLib **ppTLib, 3501 UINT *pIndex); 3502 void __RPC_STUB ITypeInfo_RemoteGetContainingTypeLib_Stub( 3503 IRpcStubBuffer* This, 3504 IRpcChannelBuffer* pRpcChannelBuffer, 3505 PRPC_MESSAGE pRpcMessage, 3506 DWORD* pdwStubPhase); 3507 HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseTypeAttr_Proxy( 3508 ITypeInfo* This); 3509 void __RPC_STUB ITypeInfo_LocalReleaseTypeAttr_Stub( 3510 IRpcStubBuffer* This, 3511 IRpcChannelBuffer* pRpcChannelBuffer, 3512 PRPC_MESSAGE pRpcMessage, 3513 DWORD* pdwStubPhase); 3514 HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseFuncDesc_Proxy( 3515 ITypeInfo* This); 3516 void __RPC_STUB ITypeInfo_LocalReleaseFuncDesc_Stub( 3517 IRpcStubBuffer* This, 3518 IRpcChannelBuffer* pRpcChannelBuffer, 3519 PRPC_MESSAGE pRpcMessage, 3520 DWORD* pdwStubPhase); 3521 HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseVarDesc_Proxy( 3522 ITypeInfo* This); 3523 void __RPC_STUB ITypeInfo_LocalReleaseVarDesc_Stub( 3524 IRpcStubBuffer* This, 3525 IRpcChannelBuffer* pRpcChannelBuffer, 3526 PRPC_MESSAGE pRpcMessage, 3527 DWORD* pdwStubPhase); 3528 HRESULT CALLBACK ITypeInfo_GetTypeAttr_Proxy( 3529 ITypeInfo* This, 3530 TYPEATTR **ppTypeAttr); 3531 HRESULT __RPC_STUB ITypeInfo_GetTypeAttr_Stub( 3532 ITypeInfo* This, 3533 LPTYPEATTR *ppTypeAttr, 3534 CLEANLOCALSTORAGE *pDummy); 3535 HRESULT CALLBACK ITypeInfo_GetFuncDesc_Proxy( 3536 ITypeInfo* This, 3537 UINT index, 3538 FUNCDESC **ppFuncDesc); 3539 HRESULT __RPC_STUB ITypeInfo_GetFuncDesc_Stub( 3540 ITypeInfo* This, 3541 UINT index, 3542 LPFUNCDESC *ppFuncDesc, 3543 CLEANLOCALSTORAGE *pDummy); 3544 HRESULT CALLBACK ITypeInfo_GetVarDesc_Proxy( 3545 ITypeInfo* This, 3546 UINT index, 3547 VARDESC **ppVarDesc); 3548 HRESULT __RPC_STUB ITypeInfo_GetVarDesc_Stub( 3549 ITypeInfo* This, 3550 UINT index, 3551 LPVARDESC *ppVarDesc, 3552 CLEANLOCALSTORAGE *pDummy); 3553 HRESULT CALLBACK ITypeInfo_GetNames_Proxy( 3554 ITypeInfo* This, 3555 MEMBERID memid, 3556 BSTR *rgBstrNames, 3557 UINT cMaxNames, 3558 UINT *pcNames); 3559 HRESULT __RPC_STUB ITypeInfo_GetNames_Stub( 3560 ITypeInfo* This, 3561 MEMBERID memid, 3562 BSTR *rgBstrNames, 3563 UINT cMaxNames, 3564 UINT *pcNames); 3565 HRESULT CALLBACK ITypeInfo_GetIDsOfNames_Proxy( 3566 ITypeInfo* This, 3567 LPOLESTR *rgszNames, 3568 UINT cNames, 3569 MEMBERID *pMemId); 3570 HRESULT __RPC_STUB ITypeInfo_GetIDsOfNames_Stub( 3571 ITypeInfo* This); 3572 HRESULT CALLBACK ITypeInfo_Invoke_Proxy( 3573 ITypeInfo* This, 3574 PVOID pvInstance, 3575 MEMBERID memid, 3576 WORD wFlags, 3577 DISPPARAMS *pDispParams, 3578 VARIANT *pVarResult, 3579 EXCEPINFO *pExcepInfo, 3580 UINT *puArgErr); 3581 HRESULT __RPC_STUB ITypeInfo_Invoke_Stub( 3582 ITypeInfo* This); 3583 HRESULT CALLBACK ITypeInfo_GetDocumentation_Proxy( 3584 ITypeInfo* This, 3585 MEMBERID memid, 3586 BSTR *pBstrName, 3587 BSTR *pBstrDocString, 3588 DWORD *pdwHelpContext, 3589 BSTR *pBstrHelpFile); 3590 HRESULT __RPC_STUB ITypeInfo_GetDocumentation_Stub( 3591 ITypeInfo* This, 3592 MEMBERID memid, 3593 DWORD refPtrFlags, 3594 BSTR *pBstrName, 3595 BSTR *pBstrDocString, 3596 DWORD *pdwHelpContext, 3597 BSTR *pBstrHelpFile); 3598 HRESULT CALLBACK ITypeInfo_GetDllEntry_Proxy( 3599 ITypeInfo* This, 3600 MEMBERID memid, 3601 INVOKEKIND invKind, 3602 BSTR *pBstrDllName, 3603 BSTR *pBstrName, 3604 WORD *pwOrdinal); 3605 HRESULT __RPC_STUB ITypeInfo_GetDllEntry_Stub( 3606 ITypeInfo* This, 3607 MEMBERID memid, 3608 INVOKEKIND invKind, 3609 DWORD refPtrFlags, 3610 BSTR *pBstrDllName, 3611 BSTR *pBstrName, 3612 WORD *pwOrdinal); 3613 HRESULT CALLBACK ITypeInfo_AddressOfMember_Proxy( 3614 ITypeInfo* This, 3615 MEMBERID memid, 3616 INVOKEKIND invKind, 3617 PVOID *ppv); 3618 HRESULT __RPC_STUB ITypeInfo_AddressOfMember_Stub( 3619 ITypeInfo* This); 3620 HRESULT CALLBACK ITypeInfo_CreateInstance_Proxy( 3621 ITypeInfo* This, 3622 IUnknown *pUnkOuter, 3623 REFIID riid, 3624 PVOID *ppvObj); 3625 HRESULT __RPC_STUB ITypeInfo_CreateInstance_Stub( 3626 ITypeInfo* This, 3627 REFIID riid, 3628 IUnknown **ppvObj); 3629 HRESULT CALLBACK ITypeInfo_GetContainingTypeLib_Proxy( 3630 ITypeInfo* This, 3631 ITypeLib **ppTLib, 3632 UINT *pIndex); 3633 HRESULT __RPC_STUB ITypeInfo_GetContainingTypeLib_Stub( 3634 ITypeInfo* This, 3635 ITypeLib **ppTLib, 3636 UINT *pIndex); 3637 void CALLBACK ITypeInfo_ReleaseTypeAttr_Proxy( 3638 ITypeInfo* This, 3639 TYPEATTR *pTypeAttr); 3640 HRESULT __RPC_STUB ITypeInfo_ReleaseTypeAttr_Stub( 3641 ITypeInfo* This); 3642 void CALLBACK ITypeInfo_ReleaseFuncDesc_Proxy( 3643 ITypeInfo* This, 3644 FUNCDESC *pFuncDesc); 3645 HRESULT __RPC_STUB ITypeInfo_ReleaseFuncDesc_Stub( 3646 ITypeInfo* This); 3647 void CALLBACK ITypeInfo_ReleaseVarDesc_Proxy( 3648 ITypeInfo* This, 3649 VARDESC *pVarDesc); 3650 HRESULT __RPC_STUB ITypeInfo_ReleaseVarDesc_Stub( 3651 ITypeInfo* This); 3652 3653 #endif /* __ITypeInfo_INTERFACE_DEFINED__ */ 3654 3655 3656 /***************************************************************************** 3657 * ITypeInfo2 interface 3658 */ 3659 #ifndef __ITypeInfo2_INTERFACE_DEFINED__ 3660 #define __ITypeInfo2_INTERFACE_DEFINED__ 3661 3662 typedef ITypeInfo2 *LPTYPEINFO2; 3663 3664 DEFINE_GUID(IID_ITypeInfo2, 0x00020412, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 3665 #if defined(__cplusplus) && !defined(CINTERFACE) 3666 MIDL_INTERFACE("00020412-0000-0000-c000-000000000046") 3667 ITypeInfo2 : public ITypeInfo 3668 { 3669 virtual HRESULT STDMETHODCALLTYPE GetTypeKind( 3670 TYPEKIND *pTypeKind) = 0; 3671 3672 virtual HRESULT STDMETHODCALLTYPE GetTypeFlags( 3673 ULONG *pTypeFlags) = 0; 3674 3675 virtual HRESULT STDMETHODCALLTYPE GetFuncIndexOfMemId( 3676 MEMBERID memid, 3677 INVOKEKIND invKind, 3678 UINT *pFuncIndex) = 0; 3679 3680 virtual HRESULT STDMETHODCALLTYPE GetVarIndexOfMemId( 3681 MEMBERID memid, 3682 UINT *pVarIndex) = 0; 3683 3684 virtual HRESULT STDMETHODCALLTYPE GetCustData( 3685 REFGUID guid, 3686 VARIANT *pVarVal) = 0; 3687 3688 virtual HRESULT STDMETHODCALLTYPE GetFuncCustData( 3689 UINT index, 3690 REFGUID guid, 3691 VARIANT *pVarVal) = 0; 3692 3693 virtual HRESULT STDMETHODCALLTYPE GetParamCustData( 3694 UINT indexFunc, 3695 UINT indexParam, 3696 REFGUID guid, 3697 VARIANT *pVarVal) = 0; 3698 3699 virtual HRESULT STDMETHODCALLTYPE GetVarCustData( 3700 UINT index, 3701 REFGUID guid, 3702 VARIANT *pVarVal) = 0; 3703 3704 virtual HRESULT STDMETHODCALLTYPE GetImplTypeCustData( 3705 UINT index, 3706 REFGUID guid, 3707 VARIANT *pVarVal) = 0; 3708 3709 virtual HRESULT STDMETHODCALLTYPE GetDocumentation2( 3710 MEMBERID memid, 3711 LCID lcid, 3712 BSTR *pbstrHelpString, 3713 DWORD *pdwHelpStringContext, 3714 BSTR *pbstrHelpStringDll) = 0; 3715 3716 virtual HRESULT STDMETHODCALLTYPE GetAllCustData( 3717 CUSTDATA *pCustData) = 0; 3718 3719 virtual HRESULT STDMETHODCALLTYPE GetAllFuncCustData( 3720 UINT index, 3721 CUSTDATA *pCustData) = 0; 3722 3723 virtual HRESULT STDMETHODCALLTYPE GetAllParamCustData( 3724 UINT indexFunc, 3725 UINT indexParam, 3726 CUSTDATA *pCustData) = 0; 3727 3728 virtual HRESULT STDMETHODCALLTYPE GetAllVarCustData( 3729 UINT index, 3730 CUSTDATA *pCustData) = 0; 3731 3732 virtual HRESULT STDMETHODCALLTYPE GetAllImplTypeCustData( 3733 UINT index, 3734 CUSTDATA *pCustData) = 0; 3735 3736 }; 3737 #ifdef __CRT_UUID_DECL 3738 __CRT_UUID_DECL(ITypeInfo2, 0x00020412, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 3739 #endif 3740 #else 3741 typedef struct ITypeInfo2Vtbl { 3742 BEGIN_INTERFACE 3743 3744 /*** IUnknown methods ***/ 3745 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3746 ITypeInfo2* This, 3747 REFIID riid, 3748 void **ppvObject); 3749 3750 ULONG (STDMETHODCALLTYPE *AddRef)( 3751 ITypeInfo2* This); 3752 3753 ULONG (STDMETHODCALLTYPE *Release)( 3754 ITypeInfo2* This); 3755 3756 /*** ITypeInfo methods ***/ 3757 HRESULT (STDMETHODCALLTYPE *GetTypeAttr)( 3758 ITypeInfo2* This, 3759 TYPEATTR **ppTypeAttr); 3760 3761 HRESULT (STDMETHODCALLTYPE *GetTypeComp)( 3762 ITypeInfo2* This, 3763 ITypeComp **ppTComp); 3764 3765 HRESULT (STDMETHODCALLTYPE *GetFuncDesc)( 3766 ITypeInfo2* This, 3767 UINT index, 3768 FUNCDESC **ppFuncDesc); 3769 3770 HRESULT (STDMETHODCALLTYPE *GetVarDesc)( 3771 ITypeInfo2* This, 3772 UINT index, 3773 VARDESC **ppVarDesc); 3774 3775 HRESULT (STDMETHODCALLTYPE *GetNames)( 3776 ITypeInfo2* This, 3777 MEMBERID memid, 3778 BSTR *rgBstrNames, 3779 UINT cMaxNames, 3780 UINT *pcNames); 3781 3782 HRESULT (STDMETHODCALLTYPE *GetRefTypeOfImplType)( 3783 ITypeInfo2* This, 3784 UINT index, 3785 HREFTYPE *pRefType); 3786 3787 HRESULT (STDMETHODCALLTYPE *GetImplTypeFlags)( 3788 ITypeInfo2* This, 3789 UINT index, 3790 INT *pImplTypeFlags); 3791 3792 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 3793 ITypeInfo2* This, 3794 LPOLESTR *rgszNames, 3795 UINT cNames, 3796 MEMBERID *pMemId); 3797 3798 HRESULT (STDMETHODCALLTYPE *Invoke)( 3799 ITypeInfo2* This, 3800 PVOID pvInstance, 3801 MEMBERID memid, 3802 WORD wFlags, 3803 DISPPARAMS *pDispParams, 3804 VARIANT *pVarResult, 3805 EXCEPINFO *pExcepInfo, 3806 UINT *puArgErr); 3807 3808 HRESULT (STDMETHODCALLTYPE *GetDocumentation)( 3809 ITypeInfo2* This, 3810 MEMBERID memid, 3811 BSTR *pBstrName, 3812 BSTR *pBstrDocString, 3813 DWORD *pdwHelpContext, 3814 BSTR *pBstrHelpFile); 3815 3816 HRESULT (STDMETHODCALLTYPE *GetDllEntry)( 3817 ITypeInfo2* This, 3818 MEMBERID memid, 3819 INVOKEKIND invKind, 3820 BSTR *pBstrDllName, 3821 BSTR *pBstrName, 3822 WORD *pwOrdinal); 3823 3824 HRESULT (STDMETHODCALLTYPE *GetRefTypeInfo)( 3825 ITypeInfo2* This, 3826 HREFTYPE hRefType, 3827 ITypeInfo **ppTInfo); 3828 3829 HRESULT (STDMETHODCALLTYPE *AddressOfMember)( 3830 ITypeInfo2* This, 3831 MEMBERID memid, 3832 INVOKEKIND invKind, 3833 PVOID *ppv); 3834 3835 HRESULT (STDMETHODCALLTYPE *CreateInstance)( 3836 ITypeInfo2* This, 3837 IUnknown *pUnkOuter, 3838 REFIID riid, 3839 PVOID *ppvObj); 3840 3841 HRESULT (STDMETHODCALLTYPE *GetMops)( 3842 ITypeInfo2* This, 3843 MEMBERID memid, 3844 BSTR *pBstrMops); 3845 3846 HRESULT (STDMETHODCALLTYPE *GetContainingTypeLib)( 3847 ITypeInfo2* This, 3848 ITypeLib **ppTLib, 3849 UINT *pIndex); 3850 3851 void (STDMETHODCALLTYPE *ReleaseTypeAttr)( 3852 ITypeInfo2* This, 3853 TYPEATTR *pTypeAttr); 3854 3855 void (STDMETHODCALLTYPE *ReleaseFuncDesc)( 3856 ITypeInfo2* This, 3857 FUNCDESC *pFuncDesc); 3858 3859 void (STDMETHODCALLTYPE *ReleaseVarDesc)( 3860 ITypeInfo2* This, 3861 VARDESC *pVarDesc); 3862 3863 /*** ITypeInfo2 methods ***/ 3864 HRESULT (STDMETHODCALLTYPE *GetTypeKind)( 3865 ITypeInfo2* This, 3866 TYPEKIND *pTypeKind); 3867 3868 HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( 3869 ITypeInfo2* This, 3870 ULONG *pTypeFlags); 3871 3872 HRESULT (STDMETHODCALLTYPE *GetFuncIndexOfMemId)( 3873 ITypeInfo2* This, 3874 MEMBERID memid, 3875 INVOKEKIND invKind, 3876 UINT *pFuncIndex); 3877 3878 HRESULT (STDMETHODCALLTYPE *GetVarIndexOfMemId)( 3879 ITypeInfo2* This, 3880 MEMBERID memid, 3881 UINT *pVarIndex); 3882 3883 HRESULT (STDMETHODCALLTYPE *GetCustData)( 3884 ITypeInfo2* This, 3885 REFGUID guid, 3886 VARIANT *pVarVal); 3887 3888 HRESULT (STDMETHODCALLTYPE *GetFuncCustData)( 3889 ITypeInfo2* This, 3890 UINT index, 3891 REFGUID guid, 3892 VARIANT *pVarVal); 3893 3894 HRESULT (STDMETHODCALLTYPE *GetParamCustData)( 3895 ITypeInfo2* This, 3896 UINT indexFunc, 3897 UINT indexParam, 3898 REFGUID guid, 3899 VARIANT *pVarVal); 3900 3901 HRESULT (STDMETHODCALLTYPE *GetVarCustData)( 3902 ITypeInfo2* This, 3903 UINT index, 3904 REFGUID guid, 3905 VARIANT *pVarVal); 3906 3907 HRESULT (STDMETHODCALLTYPE *GetImplTypeCustData)( 3908 ITypeInfo2* This, 3909 UINT index, 3910 REFGUID guid, 3911 VARIANT *pVarVal); 3912 3913 HRESULT (STDMETHODCALLTYPE *GetDocumentation2)( 3914 ITypeInfo2* This, 3915 MEMBERID memid, 3916 LCID lcid, 3917 BSTR *pbstrHelpString, 3918 DWORD *pdwHelpStringContext, 3919 BSTR *pbstrHelpStringDll); 3920 3921 HRESULT (STDMETHODCALLTYPE *GetAllCustData)( 3922 ITypeInfo2* This, 3923 CUSTDATA *pCustData); 3924 3925 HRESULT (STDMETHODCALLTYPE *GetAllFuncCustData)( 3926 ITypeInfo2* This, 3927 UINT index, 3928 CUSTDATA *pCustData); 3929 3930 HRESULT (STDMETHODCALLTYPE *GetAllParamCustData)( 3931 ITypeInfo2* This, 3932 UINT indexFunc, 3933 UINT indexParam, 3934 CUSTDATA *pCustData); 3935 3936 HRESULT (STDMETHODCALLTYPE *GetAllVarCustData)( 3937 ITypeInfo2* This, 3938 UINT index, 3939 CUSTDATA *pCustData); 3940 3941 HRESULT (STDMETHODCALLTYPE *GetAllImplTypeCustData)( 3942 ITypeInfo2* This, 3943 UINT index, 3944 CUSTDATA *pCustData); 3945 3946 END_INTERFACE 3947 } ITypeInfo2Vtbl; 3948 interface ITypeInfo2 { 3949 CONST_VTBL ITypeInfo2Vtbl* lpVtbl; 3950 }; 3951 3952 #ifdef COBJMACROS 3953 #ifndef WIDL_C_INLINE_WRAPPERS 3954 /*** IUnknown methods ***/ 3955 #define ITypeInfo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3956 #define ITypeInfo2_AddRef(This) (This)->lpVtbl->AddRef(This) 3957 #define ITypeInfo2_Release(This) (This)->lpVtbl->Release(This) 3958 /*** ITypeInfo methods ***/ 3959 #define ITypeInfo2_GetTypeAttr(This,ppTypeAttr) (This)->lpVtbl->GetTypeAttr(This,ppTypeAttr) 3960 #define ITypeInfo2_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) 3961 #define ITypeInfo2_GetFuncDesc(This,index,ppFuncDesc) (This)->lpVtbl->GetFuncDesc(This,index,ppFuncDesc) 3962 #define ITypeInfo2_GetVarDesc(This,index,ppVarDesc) (This)->lpVtbl->GetVarDesc(This,index,ppVarDesc) 3963 #define ITypeInfo2_GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) (This)->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) 3964 #define ITypeInfo2_GetRefTypeOfImplType(This,index,pRefType) (This)->lpVtbl->GetRefTypeOfImplType(This,index,pRefType) 3965 #define ITypeInfo2_GetImplTypeFlags(This,index,pImplTypeFlags) (This)->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags) 3966 #define ITypeInfo2_GetIDsOfNames(This,rgszNames,cNames,pMemId) (This)->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId) 3967 #define ITypeInfo2_Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 3968 #define ITypeInfo2_GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) 3969 #define ITypeInfo2_GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) (This)->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) 3970 #define ITypeInfo2_GetRefTypeInfo(This,hRefType,ppTInfo) (This)->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo) 3971 #define ITypeInfo2_AddressOfMember(This,memid,invKind,ppv) (This)->lpVtbl->AddressOfMember(This,memid,invKind,ppv) 3972 #define ITypeInfo2_CreateInstance(This,pUnkOuter,riid,ppvObj) (This)->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj) 3973 #define ITypeInfo2_GetMops(This,memid,pBstrMops) (This)->lpVtbl->GetMops(This,memid,pBstrMops) 3974 #define ITypeInfo2_GetContainingTypeLib(This,ppTLib,pIndex) (This)->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex) 3975 #define ITypeInfo2_ReleaseTypeAttr(This,pTypeAttr) (This)->lpVtbl->ReleaseTypeAttr(This,pTypeAttr) 3976 #define ITypeInfo2_ReleaseFuncDesc(This,pFuncDesc) (This)->lpVtbl->ReleaseFuncDesc(This,pFuncDesc) 3977 #define ITypeInfo2_ReleaseVarDesc(This,pVarDesc) (This)->lpVtbl->ReleaseVarDesc(This,pVarDesc) 3978 /*** ITypeInfo2 methods ***/ 3979 #define ITypeInfo2_GetTypeKind(This,pTypeKind) (This)->lpVtbl->GetTypeKind(This,pTypeKind) 3980 #define ITypeInfo2_GetTypeFlags(This,pTypeFlags) (This)->lpVtbl->GetTypeFlags(This,pTypeFlags) 3981 #define ITypeInfo2_GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex) (This)->lpVtbl->GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex) 3982 #define ITypeInfo2_GetVarIndexOfMemId(This,memid,pVarIndex) (This)->lpVtbl->GetVarIndexOfMemId(This,memid,pVarIndex) 3983 #define ITypeInfo2_GetCustData(This,guid,pVarVal) (This)->lpVtbl->GetCustData(This,guid,pVarVal) 3984 #define ITypeInfo2_GetFuncCustData(This,index,guid,pVarVal) (This)->lpVtbl->GetFuncCustData(This,index,guid,pVarVal) 3985 #define ITypeInfo2_GetParamCustData(This,indexFunc,indexParam,guid,pVarVal) (This)->lpVtbl->GetParamCustData(This,indexFunc,indexParam,guid,pVarVal) 3986 #define ITypeInfo2_GetVarCustData(This,index,guid,pVarVal) (This)->lpVtbl->GetVarCustData(This,index,guid,pVarVal) 3987 #define ITypeInfo2_GetImplTypeCustData(This,index,guid,pVarVal) (This)->lpVtbl->GetImplTypeCustData(This,index,guid,pVarVal) 3988 #define ITypeInfo2_GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) (This)->lpVtbl->GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) 3989 #define ITypeInfo2_GetAllCustData(This,pCustData) (This)->lpVtbl->GetAllCustData(This,pCustData) 3990 #define ITypeInfo2_GetAllFuncCustData(This,index,pCustData) (This)->lpVtbl->GetAllFuncCustData(This,index,pCustData) 3991 #define ITypeInfo2_GetAllParamCustData(This,indexFunc,indexParam,pCustData) (This)->lpVtbl->GetAllParamCustData(This,indexFunc,indexParam,pCustData) 3992 #define ITypeInfo2_GetAllVarCustData(This,index,pCustData) (This)->lpVtbl->GetAllVarCustData(This,index,pCustData) 3993 #define ITypeInfo2_GetAllImplTypeCustData(This,index,pCustData) (This)->lpVtbl->GetAllImplTypeCustData(This,index,pCustData) 3994 #else 3995 /*** IUnknown methods ***/ 3996 static FORCEINLINE HRESULT ITypeInfo2_QueryInterface(ITypeInfo2* This,REFIID riid,void **ppvObject) { 3997 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3998 } 3999 static FORCEINLINE ULONG ITypeInfo2_AddRef(ITypeInfo2* This) { 4000 return This->lpVtbl->AddRef(This); 4001 } 4002 static FORCEINLINE ULONG ITypeInfo2_Release(ITypeInfo2* This) { 4003 return This->lpVtbl->Release(This); 4004 } 4005 /*** ITypeInfo methods ***/ 4006 static FORCEINLINE HRESULT ITypeInfo2_GetTypeAttr(ITypeInfo2* This,TYPEATTR **ppTypeAttr) { 4007 return This->lpVtbl->GetTypeAttr(This,ppTypeAttr); 4008 } 4009 static FORCEINLINE HRESULT ITypeInfo2_GetTypeComp(ITypeInfo2* This,ITypeComp **ppTComp) { 4010 return This->lpVtbl->GetTypeComp(This,ppTComp); 4011 } 4012 static FORCEINLINE HRESULT ITypeInfo2_GetFuncDesc(ITypeInfo2* This,UINT index,FUNCDESC **ppFuncDesc) { 4013 return This->lpVtbl->GetFuncDesc(This,index,ppFuncDesc); 4014 } 4015 static FORCEINLINE HRESULT ITypeInfo2_GetVarDesc(ITypeInfo2* This,UINT index,VARDESC **ppVarDesc) { 4016 return This->lpVtbl->GetVarDesc(This,index,ppVarDesc); 4017 } 4018 static FORCEINLINE HRESULT ITypeInfo2_GetNames(ITypeInfo2* This,MEMBERID memid,BSTR *rgBstrNames,UINT cMaxNames,UINT *pcNames) { 4019 return This->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames); 4020 } 4021 static FORCEINLINE HRESULT ITypeInfo2_GetRefTypeOfImplType(ITypeInfo2* This,UINT index,HREFTYPE *pRefType) { 4022 return This->lpVtbl->GetRefTypeOfImplType(This,index,pRefType); 4023 } 4024 static FORCEINLINE HRESULT ITypeInfo2_GetImplTypeFlags(ITypeInfo2* This,UINT index,INT *pImplTypeFlags) { 4025 return This->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags); 4026 } 4027 static FORCEINLINE HRESULT ITypeInfo2_GetIDsOfNames(ITypeInfo2* This,LPOLESTR *rgszNames,UINT cNames,MEMBERID *pMemId) { 4028 return This->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId); 4029 } 4030 static FORCEINLINE HRESULT ITypeInfo2_Invoke(ITypeInfo2* This,PVOID pvInstance,MEMBERID memid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 4031 return This->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 4032 } 4033 static FORCEINLINE HRESULT ITypeInfo2_GetDocumentation(ITypeInfo2* This,MEMBERID memid,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { 4034 return This->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); 4035 } 4036 static FORCEINLINE HRESULT ITypeInfo2_GetDllEntry(ITypeInfo2* This,MEMBERID memid,INVOKEKIND invKind,BSTR *pBstrDllName,BSTR *pBstrName,WORD *pwOrdinal) { 4037 return This->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal); 4038 } 4039 static FORCEINLINE HRESULT ITypeInfo2_GetRefTypeInfo(ITypeInfo2* This,HREFTYPE hRefType,ITypeInfo **ppTInfo) { 4040 return This->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo); 4041 } 4042 static FORCEINLINE HRESULT ITypeInfo2_AddressOfMember(ITypeInfo2* This,MEMBERID memid,INVOKEKIND invKind,PVOID *ppv) { 4043 return This->lpVtbl->AddressOfMember(This,memid,invKind,ppv); 4044 } 4045 static FORCEINLINE HRESULT ITypeInfo2_CreateInstance(ITypeInfo2* This,IUnknown *pUnkOuter,REFIID riid,PVOID *ppvObj) { 4046 return This->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj); 4047 } 4048 static FORCEINLINE HRESULT ITypeInfo2_GetMops(ITypeInfo2* This,MEMBERID memid,BSTR *pBstrMops) { 4049 return This->lpVtbl->GetMops(This,memid,pBstrMops); 4050 } 4051 static FORCEINLINE HRESULT ITypeInfo2_GetContainingTypeLib(ITypeInfo2* This,ITypeLib **ppTLib,UINT *pIndex) { 4052 return This->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex); 4053 } 4054 static FORCEINLINE void ITypeInfo2_ReleaseTypeAttr(ITypeInfo2* This,TYPEATTR *pTypeAttr) { 4055 This->lpVtbl->ReleaseTypeAttr(This,pTypeAttr); 4056 } 4057 static FORCEINLINE void ITypeInfo2_ReleaseFuncDesc(ITypeInfo2* This,FUNCDESC *pFuncDesc) { 4058 This->lpVtbl->ReleaseFuncDesc(This,pFuncDesc); 4059 } 4060 static FORCEINLINE void ITypeInfo2_ReleaseVarDesc(ITypeInfo2* This,VARDESC *pVarDesc) { 4061 This->lpVtbl->ReleaseVarDesc(This,pVarDesc); 4062 } 4063 /*** ITypeInfo2 methods ***/ 4064 static FORCEINLINE HRESULT ITypeInfo2_GetTypeKind(ITypeInfo2* This,TYPEKIND *pTypeKind) { 4065 return This->lpVtbl->GetTypeKind(This,pTypeKind); 4066 } 4067 static FORCEINLINE HRESULT ITypeInfo2_GetTypeFlags(ITypeInfo2* This,ULONG *pTypeFlags) { 4068 return This->lpVtbl->GetTypeFlags(This,pTypeFlags); 4069 } 4070 static FORCEINLINE HRESULT ITypeInfo2_GetFuncIndexOfMemId(ITypeInfo2* This,MEMBERID memid,INVOKEKIND invKind,UINT *pFuncIndex) { 4071 return This->lpVtbl->GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex); 4072 } 4073 static FORCEINLINE HRESULT ITypeInfo2_GetVarIndexOfMemId(ITypeInfo2* This,MEMBERID memid,UINT *pVarIndex) { 4074 return This->lpVtbl->GetVarIndexOfMemId(This,memid,pVarIndex); 4075 } 4076 static FORCEINLINE HRESULT ITypeInfo2_GetCustData(ITypeInfo2* This,REFGUID guid,VARIANT *pVarVal) { 4077 return This->lpVtbl->GetCustData(This,guid,pVarVal); 4078 } 4079 static FORCEINLINE HRESULT ITypeInfo2_GetFuncCustData(ITypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { 4080 return This->lpVtbl->GetFuncCustData(This,index,guid,pVarVal); 4081 } 4082 static FORCEINLINE HRESULT ITypeInfo2_GetParamCustData(ITypeInfo2* This,UINT indexFunc,UINT indexParam,REFGUID guid,VARIANT *pVarVal) { 4083 return This->lpVtbl->GetParamCustData(This,indexFunc,indexParam,guid,pVarVal); 4084 } 4085 static FORCEINLINE HRESULT ITypeInfo2_GetVarCustData(ITypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { 4086 return This->lpVtbl->GetVarCustData(This,index,guid,pVarVal); 4087 } 4088 static FORCEINLINE HRESULT ITypeInfo2_GetImplTypeCustData(ITypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { 4089 return This->lpVtbl->GetImplTypeCustData(This,index,guid,pVarVal); 4090 } 4091 static FORCEINLINE HRESULT ITypeInfo2_GetDocumentation2(ITypeInfo2* This,MEMBERID memid,LCID lcid,BSTR *pbstrHelpString,DWORD *pdwHelpStringContext,BSTR *pbstrHelpStringDll) { 4092 return This->lpVtbl->GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll); 4093 } 4094 static FORCEINLINE HRESULT ITypeInfo2_GetAllCustData(ITypeInfo2* This,CUSTDATA *pCustData) { 4095 return This->lpVtbl->GetAllCustData(This,pCustData); 4096 } 4097 static FORCEINLINE HRESULT ITypeInfo2_GetAllFuncCustData(ITypeInfo2* This,UINT index,CUSTDATA *pCustData) { 4098 return This->lpVtbl->GetAllFuncCustData(This,index,pCustData); 4099 } 4100 static FORCEINLINE HRESULT ITypeInfo2_GetAllParamCustData(ITypeInfo2* This,UINT indexFunc,UINT indexParam,CUSTDATA *pCustData) { 4101 return This->lpVtbl->GetAllParamCustData(This,indexFunc,indexParam,pCustData); 4102 } 4103 static FORCEINLINE HRESULT ITypeInfo2_GetAllVarCustData(ITypeInfo2* This,UINT index,CUSTDATA *pCustData) { 4104 return This->lpVtbl->GetAllVarCustData(This,index,pCustData); 4105 } 4106 static FORCEINLINE HRESULT ITypeInfo2_GetAllImplTypeCustData(ITypeInfo2* This,UINT index,CUSTDATA *pCustData) { 4107 return This->lpVtbl->GetAllImplTypeCustData(This,index,pCustData); 4108 } 4109 #endif 4110 #endif 4111 4112 #endif 4113 4114 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetTypeKind_Proxy( 4115 ITypeInfo2* This, 4116 TYPEKIND *pTypeKind); 4117 void __RPC_STUB ITypeInfo2_GetTypeKind_Stub( 4118 IRpcStubBuffer* This, 4119 IRpcChannelBuffer* pRpcChannelBuffer, 4120 PRPC_MESSAGE pRpcMessage, 4121 DWORD* pdwStubPhase); 4122 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetTypeFlags_Proxy( 4123 ITypeInfo2* This, 4124 ULONG *pTypeFlags); 4125 void __RPC_STUB ITypeInfo2_GetTypeFlags_Stub( 4126 IRpcStubBuffer* This, 4127 IRpcChannelBuffer* pRpcChannelBuffer, 4128 PRPC_MESSAGE pRpcMessage, 4129 DWORD* pdwStubPhase); 4130 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetFuncIndexOfMemId_Proxy( 4131 ITypeInfo2* This, 4132 MEMBERID memid, 4133 INVOKEKIND invKind, 4134 UINT *pFuncIndex); 4135 void __RPC_STUB ITypeInfo2_GetFuncIndexOfMemId_Stub( 4136 IRpcStubBuffer* This, 4137 IRpcChannelBuffer* pRpcChannelBuffer, 4138 PRPC_MESSAGE pRpcMessage, 4139 DWORD* pdwStubPhase); 4140 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetVarIndexOfMemId_Proxy( 4141 ITypeInfo2* This, 4142 MEMBERID memid, 4143 UINT *pVarIndex); 4144 void __RPC_STUB ITypeInfo2_GetVarIndexOfMemId_Stub( 4145 IRpcStubBuffer* This, 4146 IRpcChannelBuffer* pRpcChannelBuffer, 4147 PRPC_MESSAGE pRpcMessage, 4148 DWORD* pdwStubPhase); 4149 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetCustData_Proxy( 4150 ITypeInfo2* This, 4151 REFGUID guid, 4152 VARIANT *pVarVal); 4153 void __RPC_STUB ITypeInfo2_GetCustData_Stub( 4154 IRpcStubBuffer* This, 4155 IRpcChannelBuffer* pRpcChannelBuffer, 4156 PRPC_MESSAGE pRpcMessage, 4157 DWORD* pdwStubPhase); 4158 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetFuncCustData_Proxy( 4159 ITypeInfo2* This, 4160 UINT index, 4161 REFGUID guid, 4162 VARIANT *pVarVal); 4163 void __RPC_STUB ITypeInfo2_GetFuncCustData_Stub( 4164 IRpcStubBuffer* This, 4165 IRpcChannelBuffer* pRpcChannelBuffer, 4166 PRPC_MESSAGE pRpcMessage, 4167 DWORD* pdwStubPhase); 4168 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetParamCustData_Proxy( 4169 ITypeInfo2* This, 4170 UINT indexFunc, 4171 UINT indexParam, 4172 REFGUID guid, 4173 VARIANT *pVarVal); 4174 void __RPC_STUB ITypeInfo2_GetParamCustData_Stub( 4175 IRpcStubBuffer* This, 4176 IRpcChannelBuffer* pRpcChannelBuffer, 4177 PRPC_MESSAGE pRpcMessage, 4178 DWORD* pdwStubPhase); 4179 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetVarCustData_Proxy( 4180 ITypeInfo2* This, 4181 UINT index, 4182 REFGUID guid, 4183 VARIANT *pVarVal); 4184 void __RPC_STUB ITypeInfo2_GetVarCustData_Stub( 4185 IRpcStubBuffer* This, 4186 IRpcChannelBuffer* pRpcChannelBuffer, 4187 PRPC_MESSAGE pRpcMessage, 4188 DWORD* pdwStubPhase); 4189 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetImplTypeCustData_Proxy( 4190 ITypeInfo2* This, 4191 UINT index, 4192 REFGUID guid, 4193 VARIANT *pVarVal); 4194 void __RPC_STUB ITypeInfo2_GetImplTypeCustData_Stub( 4195 IRpcStubBuffer* This, 4196 IRpcChannelBuffer* pRpcChannelBuffer, 4197 PRPC_MESSAGE pRpcMessage, 4198 DWORD* pdwStubPhase); 4199 HRESULT STDMETHODCALLTYPE ITypeInfo2_RemoteGetDocumentation2_Proxy( 4200 ITypeInfo2* This, 4201 MEMBERID memid, 4202 LCID lcid, 4203 DWORD refPtrFlags, 4204 BSTR *pbstrHelpString, 4205 DWORD *pdwHelpStringContext, 4206 BSTR *pbstrHelpStringDll); 4207 void __RPC_STUB ITypeInfo2_RemoteGetDocumentation2_Stub( 4208 IRpcStubBuffer* This, 4209 IRpcChannelBuffer* pRpcChannelBuffer, 4210 PRPC_MESSAGE pRpcMessage, 4211 DWORD* pdwStubPhase); 4212 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllCustData_Proxy( 4213 ITypeInfo2* This, 4214 CUSTDATA *pCustData); 4215 void __RPC_STUB ITypeInfo2_GetAllCustData_Stub( 4216 IRpcStubBuffer* This, 4217 IRpcChannelBuffer* pRpcChannelBuffer, 4218 PRPC_MESSAGE pRpcMessage, 4219 DWORD* pdwStubPhase); 4220 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllFuncCustData_Proxy( 4221 ITypeInfo2* This, 4222 UINT index, 4223 CUSTDATA *pCustData); 4224 void __RPC_STUB ITypeInfo2_GetAllFuncCustData_Stub( 4225 IRpcStubBuffer* This, 4226 IRpcChannelBuffer* pRpcChannelBuffer, 4227 PRPC_MESSAGE pRpcMessage, 4228 DWORD* pdwStubPhase); 4229 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllParamCustData_Proxy( 4230 ITypeInfo2* This, 4231 UINT indexFunc, 4232 UINT indexParam, 4233 CUSTDATA *pCustData); 4234 void __RPC_STUB ITypeInfo2_GetAllParamCustData_Stub( 4235 IRpcStubBuffer* This, 4236 IRpcChannelBuffer* pRpcChannelBuffer, 4237 PRPC_MESSAGE pRpcMessage, 4238 DWORD* pdwStubPhase); 4239 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllVarCustData_Proxy( 4240 ITypeInfo2* This, 4241 UINT index, 4242 CUSTDATA *pCustData); 4243 void __RPC_STUB ITypeInfo2_GetAllVarCustData_Stub( 4244 IRpcStubBuffer* This, 4245 IRpcChannelBuffer* pRpcChannelBuffer, 4246 PRPC_MESSAGE pRpcMessage, 4247 DWORD* pdwStubPhase); 4248 HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllImplTypeCustData_Proxy( 4249 ITypeInfo2* This, 4250 UINT index, 4251 CUSTDATA *pCustData); 4252 void __RPC_STUB ITypeInfo2_GetAllImplTypeCustData_Stub( 4253 IRpcStubBuffer* This, 4254 IRpcChannelBuffer* pRpcChannelBuffer, 4255 PRPC_MESSAGE pRpcMessage, 4256 DWORD* pdwStubPhase); 4257 HRESULT CALLBACK ITypeInfo2_GetDocumentation2_Proxy( 4258 ITypeInfo2* This, 4259 MEMBERID memid, 4260 LCID lcid, 4261 BSTR *pbstrHelpString, 4262 DWORD *pdwHelpStringContext, 4263 BSTR *pbstrHelpStringDll); 4264 HRESULT __RPC_STUB ITypeInfo2_GetDocumentation2_Stub( 4265 ITypeInfo2* This, 4266 MEMBERID memid, 4267 LCID lcid, 4268 DWORD refPtrFlags, 4269 BSTR *pbstrHelpString, 4270 DWORD *pdwHelpStringContext, 4271 BSTR *pbstrHelpStringDll); 4272 4273 #endif /* __ITypeInfo2_INTERFACE_DEFINED__ */ 4274 4275 #endif 4276 4277 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 4278 /***************************************************************************** 4279 * ITypeLib interface 4280 */ 4281 #ifndef __ITypeLib_INTERFACE_DEFINED__ 4282 #define __ITypeLib_INTERFACE_DEFINED__ 4283 4284 typedef enum tagSYSKIND { 4285 SYS_WIN16 = 0, 4286 SYS_WIN32 = 1, 4287 SYS_MAC = 2, 4288 SYS_WIN64 = 3 4289 } SYSKIND; 4290 4291 typedef enum tagLIBFLAGS { 4292 LIBFLAG_FRESTRICTED = 0x1, 4293 LIBFLAG_FCONTROL = 0x2, 4294 LIBFLAG_FHIDDEN = 0x4, 4295 LIBFLAG_FHASDISKIMAGE = 0x8 4296 } LIBFLAGS; 4297 4298 typedef ITypeLib *LPTYPELIB; 4299 4300 typedef struct tagTLIBATTR { 4301 GUID guid; 4302 LCID lcid; 4303 SYSKIND syskind; 4304 WORD wMajorVerNum; 4305 WORD wMinorVerNum; 4306 WORD wLibFlags; 4307 } TLIBATTR; 4308 typedef struct tagTLIBATTR *LPTLIBATTR; 4309 4310 DEFINE_GUID(IID_ITypeLib, 0x00020402, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4311 #if defined(__cplusplus) && !defined(CINTERFACE) 4312 MIDL_INTERFACE("00020402-0000-0000-c000-000000000046") 4313 ITypeLib : public IUnknown 4314 { 4315 virtual UINT STDMETHODCALLTYPE GetTypeInfoCount( 4316 ) = 0; 4317 4318 virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( 4319 UINT index, 4320 ITypeInfo **ppTInfo) = 0; 4321 4322 virtual HRESULT STDMETHODCALLTYPE GetTypeInfoType( 4323 UINT index, 4324 TYPEKIND *pTKind) = 0; 4325 4326 virtual HRESULT STDMETHODCALLTYPE GetTypeInfoOfGuid( 4327 REFGUID guid, 4328 ITypeInfo **ppTinfo) = 0; 4329 4330 virtual HRESULT STDMETHODCALLTYPE GetLibAttr( 4331 TLIBATTR **ppTLibAttr) = 0; 4332 4333 virtual HRESULT STDMETHODCALLTYPE GetTypeComp( 4334 ITypeComp **ppTComp) = 0; 4335 4336 virtual HRESULT STDMETHODCALLTYPE GetDocumentation( 4337 INT index, 4338 BSTR *pBstrName, 4339 BSTR *pBstrDocString, 4340 DWORD *pdwHelpContext, 4341 BSTR *pBstrHelpFile) = 0; 4342 4343 virtual HRESULT STDMETHODCALLTYPE IsName( 4344 LPOLESTR szNameBuf, 4345 ULONG lHashVal, 4346 WINBOOL *pfName) = 0; 4347 4348 virtual HRESULT STDMETHODCALLTYPE FindName( 4349 LPOLESTR szNameBuf, 4350 ULONG lHashVal, 4351 ITypeInfo **ppTInfo, 4352 MEMBERID *rgMemId, 4353 USHORT *pcFound) = 0; 4354 4355 virtual void STDMETHODCALLTYPE ReleaseTLibAttr( 4356 TLIBATTR *pTLibAttr) = 0; 4357 4358 }; 4359 #ifdef __CRT_UUID_DECL 4360 __CRT_UUID_DECL(ITypeLib, 0x00020402, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4361 #endif 4362 #else 4363 typedef struct ITypeLibVtbl { 4364 BEGIN_INTERFACE 4365 4366 /*** IUnknown methods ***/ 4367 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4368 ITypeLib* This, 4369 REFIID riid, 4370 void **ppvObject); 4371 4372 ULONG (STDMETHODCALLTYPE *AddRef)( 4373 ITypeLib* This); 4374 4375 ULONG (STDMETHODCALLTYPE *Release)( 4376 ITypeLib* This); 4377 4378 /*** ITypeLib methods ***/ 4379 UINT (STDMETHODCALLTYPE *GetTypeInfoCount)( 4380 ITypeLib* This); 4381 4382 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 4383 ITypeLib* This, 4384 UINT index, 4385 ITypeInfo **ppTInfo); 4386 4387 HRESULT (STDMETHODCALLTYPE *GetTypeInfoType)( 4388 ITypeLib* This, 4389 UINT index, 4390 TYPEKIND *pTKind); 4391 4392 HRESULT (STDMETHODCALLTYPE *GetTypeInfoOfGuid)( 4393 ITypeLib* This, 4394 REFGUID guid, 4395 ITypeInfo **ppTinfo); 4396 4397 HRESULT (STDMETHODCALLTYPE *GetLibAttr)( 4398 ITypeLib* This, 4399 TLIBATTR **ppTLibAttr); 4400 4401 HRESULT (STDMETHODCALLTYPE *GetTypeComp)( 4402 ITypeLib* This, 4403 ITypeComp **ppTComp); 4404 4405 HRESULT (STDMETHODCALLTYPE *GetDocumentation)( 4406 ITypeLib* This, 4407 INT index, 4408 BSTR *pBstrName, 4409 BSTR *pBstrDocString, 4410 DWORD *pdwHelpContext, 4411 BSTR *pBstrHelpFile); 4412 4413 HRESULT (STDMETHODCALLTYPE *IsName)( 4414 ITypeLib* This, 4415 LPOLESTR szNameBuf, 4416 ULONG lHashVal, 4417 WINBOOL *pfName); 4418 4419 HRESULT (STDMETHODCALLTYPE *FindName)( 4420 ITypeLib* This, 4421 LPOLESTR szNameBuf, 4422 ULONG lHashVal, 4423 ITypeInfo **ppTInfo, 4424 MEMBERID *rgMemId, 4425 USHORT *pcFound); 4426 4427 void (STDMETHODCALLTYPE *ReleaseTLibAttr)( 4428 ITypeLib* This, 4429 TLIBATTR *pTLibAttr); 4430 4431 END_INTERFACE 4432 } ITypeLibVtbl; 4433 interface ITypeLib { 4434 CONST_VTBL ITypeLibVtbl* lpVtbl; 4435 }; 4436 4437 #ifdef COBJMACROS 4438 #ifndef WIDL_C_INLINE_WRAPPERS 4439 /*** IUnknown methods ***/ 4440 #define ITypeLib_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4441 #define ITypeLib_AddRef(This) (This)->lpVtbl->AddRef(This) 4442 #define ITypeLib_Release(This) (This)->lpVtbl->Release(This) 4443 /*** ITypeLib methods ***/ 4444 #define ITypeLib_GetTypeInfoCount(This) (This)->lpVtbl->GetTypeInfoCount(This) 4445 #define ITypeLib_GetTypeInfo(This,index,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,index,ppTInfo) 4446 #define ITypeLib_GetTypeInfoType(This,index,pTKind) (This)->lpVtbl->GetTypeInfoType(This,index,pTKind) 4447 #define ITypeLib_GetTypeInfoOfGuid(This,guid,ppTinfo) (This)->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo) 4448 #define ITypeLib_GetLibAttr(This,ppTLibAttr) (This)->lpVtbl->GetLibAttr(This,ppTLibAttr) 4449 #define ITypeLib_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) 4450 #define ITypeLib_GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) 4451 #define ITypeLib_IsName(This,szNameBuf,lHashVal,pfName) (This)->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName) 4452 #define ITypeLib_FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) (This)->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) 4453 #define ITypeLib_ReleaseTLibAttr(This,pTLibAttr) (This)->lpVtbl->ReleaseTLibAttr(This,pTLibAttr) 4454 #else 4455 /*** IUnknown methods ***/ 4456 static FORCEINLINE HRESULT ITypeLib_QueryInterface(ITypeLib* This,REFIID riid,void **ppvObject) { 4457 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4458 } 4459 static FORCEINLINE ULONG ITypeLib_AddRef(ITypeLib* This) { 4460 return This->lpVtbl->AddRef(This); 4461 } 4462 static FORCEINLINE ULONG ITypeLib_Release(ITypeLib* This) { 4463 return This->lpVtbl->Release(This); 4464 } 4465 /*** ITypeLib methods ***/ 4466 static FORCEINLINE UINT ITypeLib_GetTypeInfoCount(ITypeLib* This) { 4467 return This->lpVtbl->GetTypeInfoCount(This); 4468 } 4469 static FORCEINLINE HRESULT ITypeLib_GetTypeInfo(ITypeLib* This,UINT index,ITypeInfo **ppTInfo) { 4470 return This->lpVtbl->GetTypeInfo(This,index,ppTInfo); 4471 } 4472 static FORCEINLINE HRESULT ITypeLib_GetTypeInfoType(ITypeLib* This,UINT index,TYPEKIND *pTKind) { 4473 return This->lpVtbl->GetTypeInfoType(This,index,pTKind); 4474 } 4475 static FORCEINLINE HRESULT ITypeLib_GetTypeInfoOfGuid(ITypeLib* This,REFGUID guid,ITypeInfo **ppTinfo) { 4476 return This->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo); 4477 } 4478 static FORCEINLINE HRESULT ITypeLib_GetLibAttr(ITypeLib* This,TLIBATTR **ppTLibAttr) { 4479 return This->lpVtbl->GetLibAttr(This,ppTLibAttr); 4480 } 4481 static FORCEINLINE HRESULT ITypeLib_GetTypeComp(ITypeLib* This,ITypeComp **ppTComp) { 4482 return This->lpVtbl->GetTypeComp(This,ppTComp); 4483 } 4484 static FORCEINLINE HRESULT ITypeLib_GetDocumentation(ITypeLib* This,INT index,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { 4485 return This->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); 4486 } 4487 static FORCEINLINE HRESULT ITypeLib_IsName(ITypeLib* This,LPOLESTR szNameBuf,ULONG lHashVal,WINBOOL *pfName) { 4488 return This->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName); 4489 } 4490 static FORCEINLINE HRESULT ITypeLib_FindName(ITypeLib* This,LPOLESTR szNameBuf,ULONG lHashVal,ITypeInfo **ppTInfo,MEMBERID *rgMemId,USHORT *pcFound) { 4491 return This->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound); 4492 } 4493 static FORCEINLINE void ITypeLib_ReleaseTLibAttr(ITypeLib* This,TLIBATTR *pTLibAttr) { 4494 This->lpVtbl->ReleaseTLibAttr(This,pTLibAttr); 4495 } 4496 #endif 4497 #endif 4498 4499 #endif 4500 4501 HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetTypeInfoCount_Proxy( 4502 ITypeLib* This, 4503 UINT *pcTInfo); 4504 void __RPC_STUB ITypeLib_RemoteGetTypeInfoCount_Stub( 4505 IRpcStubBuffer* This, 4506 IRpcChannelBuffer* pRpcChannelBuffer, 4507 PRPC_MESSAGE pRpcMessage, 4508 DWORD* pdwStubPhase); 4509 HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfo_Proxy( 4510 ITypeLib* This, 4511 UINT index, 4512 ITypeInfo **ppTInfo); 4513 void __RPC_STUB ITypeLib_GetTypeInfo_Stub( 4514 IRpcStubBuffer* This, 4515 IRpcChannelBuffer* pRpcChannelBuffer, 4516 PRPC_MESSAGE pRpcMessage, 4517 DWORD* pdwStubPhase); 4518 HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoType_Proxy( 4519 ITypeLib* This, 4520 UINT index, 4521 TYPEKIND *pTKind); 4522 void __RPC_STUB ITypeLib_GetTypeInfoType_Stub( 4523 IRpcStubBuffer* This, 4524 IRpcChannelBuffer* pRpcChannelBuffer, 4525 PRPC_MESSAGE pRpcMessage, 4526 DWORD* pdwStubPhase); 4527 HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoOfGuid_Proxy( 4528 ITypeLib* This, 4529 REFGUID guid, 4530 ITypeInfo **ppTinfo); 4531 void __RPC_STUB ITypeLib_GetTypeInfoOfGuid_Stub( 4532 IRpcStubBuffer* This, 4533 IRpcChannelBuffer* pRpcChannelBuffer, 4534 PRPC_MESSAGE pRpcMessage, 4535 DWORD* pdwStubPhase); 4536 HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetLibAttr_Proxy( 4537 ITypeLib* This, 4538 LPTLIBATTR *ppTLibAttr, 4539 CLEANLOCALSTORAGE *pDummy); 4540 void __RPC_STUB ITypeLib_RemoteGetLibAttr_Stub( 4541 IRpcStubBuffer* This, 4542 IRpcChannelBuffer* pRpcChannelBuffer, 4543 PRPC_MESSAGE pRpcMessage, 4544 DWORD* pdwStubPhase); 4545 HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeComp_Proxy( 4546 ITypeLib* This, 4547 ITypeComp **ppTComp); 4548 void __RPC_STUB ITypeLib_GetTypeComp_Stub( 4549 IRpcStubBuffer* This, 4550 IRpcChannelBuffer* pRpcChannelBuffer, 4551 PRPC_MESSAGE pRpcMessage, 4552 DWORD* pdwStubPhase); 4553 HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetDocumentation_Proxy( 4554 ITypeLib* This, 4555 INT index, 4556 DWORD refPtrFlags, 4557 BSTR *pBstrName, 4558 BSTR *pBstrDocString, 4559 DWORD *pdwHelpContext, 4560 BSTR *pBstrHelpFile); 4561 void __RPC_STUB ITypeLib_RemoteGetDocumentation_Stub( 4562 IRpcStubBuffer* This, 4563 IRpcChannelBuffer* pRpcChannelBuffer, 4564 PRPC_MESSAGE pRpcMessage, 4565 DWORD* pdwStubPhase); 4566 HRESULT STDMETHODCALLTYPE ITypeLib_RemoteIsName_Proxy( 4567 ITypeLib* This, 4568 LPOLESTR szNameBuf, 4569 ULONG lHashVal, 4570 WINBOOL *pfName, 4571 BSTR *pBstrLibName); 4572 void __RPC_STUB ITypeLib_RemoteIsName_Stub( 4573 IRpcStubBuffer* This, 4574 IRpcChannelBuffer* pRpcChannelBuffer, 4575 PRPC_MESSAGE pRpcMessage, 4576 DWORD* pdwStubPhase); 4577 HRESULT STDMETHODCALLTYPE ITypeLib_RemoteFindName_Proxy( 4578 ITypeLib* This, 4579 LPOLESTR szNameBuf, 4580 ULONG lHashVal, 4581 ITypeInfo **ppTInfo, 4582 MEMBERID *rgMemId, 4583 USHORT *pcFound, 4584 BSTR *pBstrLibName); 4585 void __RPC_STUB ITypeLib_RemoteFindName_Stub( 4586 IRpcStubBuffer* This, 4587 IRpcChannelBuffer* pRpcChannelBuffer, 4588 PRPC_MESSAGE pRpcMessage, 4589 DWORD* pdwStubPhase); 4590 HRESULT STDMETHODCALLTYPE ITypeLib_LocalReleaseTLibAttr_Proxy( 4591 ITypeLib* This); 4592 void __RPC_STUB ITypeLib_LocalReleaseTLibAttr_Stub( 4593 IRpcStubBuffer* This, 4594 IRpcChannelBuffer* pRpcChannelBuffer, 4595 PRPC_MESSAGE pRpcMessage, 4596 DWORD* pdwStubPhase); 4597 UINT CALLBACK ITypeLib_GetTypeInfoCount_Proxy( 4598 ITypeLib* This); 4599 HRESULT __RPC_STUB ITypeLib_GetTypeInfoCount_Stub( 4600 ITypeLib* This, 4601 UINT *pcTInfo); 4602 HRESULT CALLBACK ITypeLib_GetLibAttr_Proxy( 4603 ITypeLib* This, 4604 TLIBATTR **ppTLibAttr); 4605 HRESULT __RPC_STUB ITypeLib_GetLibAttr_Stub( 4606 ITypeLib* This, 4607 LPTLIBATTR *ppTLibAttr, 4608 CLEANLOCALSTORAGE *pDummy); 4609 HRESULT CALLBACK ITypeLib_GetDocumentation_Proxy( 4610 ITypeLib* This, 4611 INT index, 4612 BSTR *pBstrName, 4613 BSTR *pBstrDocString, 4614 DWORD *pdwHelpContext, 4615 BSTR *pBstrHelpFile); 4616 HRESULT __RPC_STUB ITypeLib_GetDocumentation_Stub( 4617 ITypeLib* This, 4618 INT index, 4619 DWORD refPtrFlags, 4620 BSTR *pBstrName, 4621 BSTR *pBstrDocString, 4622 DWORD *pdwHelpContext, 4623 BSTR *pBstrHelpFile); 4624 HRESULT CALLBACK ITypeLib_IsName_Proxy( 4625 ITypeLib* This, 4626 LPOLESTR szNameBuf, 4627 ULONG lHashVal, 4628 WINBOOL *pfName); 4629 HRESULT __RPC_STUB ITypeLib_IsName_Stub( 4630 ITypeLib* This, 4631 LPOLESTR szNameBuf, 4632 ULONG lHashVal, 4633 WINBOOL *pfName, 4634 BSTR *pBstrLibName); 4635 HRESULT CALLBACK ITypeLib_FindName_Proxy( 4636 ITypeLib* This, 4637 LPOLESTR szNameBuf, 4638 ULONG lHashVal, 4639 ITypeInfo **ppTInfo, 4640 MEMBERID *rgMemId, 4641 USHORT *pcFound); 4642 HRESULT __RPC_STUB ITypeLib_FindName_Stub( 4643 ITypeLib* This, 4644 LPOLESTR szNameBuf, 4645 ULONG lHashVal, 4646 ITypeInfo **ppTInfo, 4647 MEMBERID *rgMemId, 4648 USHORT *pcFound, 4649 BSTR *pBstrLibName); 4650 void CALLBACK ITypeLib_ReleaseTLibAttr_Proxy( 4651 ITypeLib* This, 4652 TLIBATTR *pTLibAttr); 4653 HRESULT __RPC_STUB ITypeLib_ReleaseTLibAttr_Stub( 4654 ITypeLib* This); 4655 4656 #endif /* __ITypeLib_INTERFACE_DEFINED__ */ 4657 4658 #endif 4659 4660 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 4661 /***************************************************************************** 4662 * ITypeLib2 interface 4663 */ 4664 #ifndef __ITypeLib2_INTERFACE_DEFINED__ 4665 #define __ITypeLib2_INTERFACE_DEFINED__ 4666 4667 typedef ITypeLib2 *LPTYPELIB2; 4668 4669 DEFINE_GUID(IID_ITypeLib2, 0x00020411, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4670 #if defined(__cplusplus) && !defined(CINTERFACE) 4671 MIDL_INTERFACE("00020411-0000-0000-c000-000000000046") 4672 ITypeLib2 : public ITypeLib 4673 { 4674 virtual HRESULT STDMETHODCALLTYPE GetCustData( 4675 REFGUID guid, 4676 VARIANT *pVarVal) = 0; 4677 4678 virtual HRESULT STDMETHODCALLTYPE GetLibStatistics( 4679 ULONG *pcUniqueNames, 4680 ULONG *pcchUniqueNames) = 0; 4681 4682 virtual HRESULT STDMETHODCALLTYPE GetDocumentation2( 4683 INT index, 4684 LCID lcid, 4685 BSTR *pbstrHelpString, 4686 DWORD *pdwHelpStringContext, 4687 BSTR *pbstrHelpStringDll) = 0; 4688 4689 virtual HRESULT STDMETHODCALLTYPE GetAllCustData( 4690 CUSTDATA *pCustData) = 0; 4691 4692 }; 4693 #ifdef __CRT_UUID_DECL 4694 __CRT_UUID_DECL(ITypeLib2, 0x00020411, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4695 #endif 4696 #else 4697 typedef struct ITypeLib2Vtbl { 4698 BEGIN_INTERFACE 4699 4700 /*** IUnknown methods ***/ 4701 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4702 ITypeLib2* This, 4703 REFIID riid, 4704 void **ppvObject); 4705 4706 ULONG (STDMETHODCALLTYPE *AddRef)( 4707 ITypeLib2* This); 4708 4709 ULONG (STDMETHODCALLTYPE *Release)( 4710 ITypeLib2* This); 4711 4712 /*** ITypeLib methods ***/ 4713 UINT (STDMETHODCALLTYPE *GetTypeInfoCount)( 4714 ITypeLib2* This); 4715 4716 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 4717 ITypeLib2* This, 4718 UINT index, 4719 ITypeInfo **ppTInfo); 4720 4721 HRESULT (STDMETHODCALLTYPE *GetTypeInfoType)( 4722 ITypeLib2* This, 4723 UINT index, 4724 TYPEKIND *pTKind); 4725 4726 HRESULT (STDMETHODCALLTYPE *GetTypeInfoOfGuid)( 4727 ITypeLib2* This, 4728 REFGUID guid, 4729 ITypeInfo **ppTinfo); 4730 4731 HRESULT (STDMETHODCALLTYPE *GetLibAttr)( 4732 ITypeLib2* This, 4733 TLIBATTR **ppTLibAttr); 4734 4735 HRESULT (STDMETHODCALLTYPE *GetTypeComp)( 4736 ITypeLib2* This, 4737 ITypeComp **ppTComp); 4738 4739 HRESULT (STDMETHODCALLTYPE *GetDocumentation)( 4740 ITypeLib2* This, 4741 INT index, 4742 BSTR *pBstrName, 4743 BSTR *pBstrDocString, 4744 DWORD *pdwHelpContext, 4745 BSTR *pBstrHelpFile); 4746 4747 HRESULT (STDMETHODCALLTYPE *IsName)( 4748 ITypeLib2* This, 4749 LPOLESTR szNameBuf, 4750 ULONG lHashVal, 4751 WINBOOL *pfName); 4752 4753 HRESULT (STDMETHODCALLTYPE *FindName)( 4754 ITypeLib2* This, 4755 LPOLESTR szNameBuf, 4756 ULONG lHashVal, 4757 ITypeInfo **ppTInfo, 4758 MEMBERID *rgMemId, 4759 USHORT *pcFound); 4760 4761 void (STDMETHODCALLTYPE *ReleaseTLibAttr)( 4762 ITypeLib2* This, 4763 TLIBATTR *pTLibAttr); 4764 4765 /*** ITypeLib2 methods ***/ 4766 HRESULT (STDMETHODCALLTYPE *GetCustData)( 4767 ITypeLib2* This, 4768 REFGUID guid, 4769 VARIANT *pVarVal); 4770 4771 HRESULT (STDMETHODCALLTYPE *GetLibStatistics)( 4772 ITypeLib2* This, 4773 ULONG *pcUniqueNames, 4774 ULONG *pcchUniqueNames); 4775 4776 HRESULT (STDMETHODCALLTYPE *GetDocumentation2)( 4777 ITypeLib2* This, 4778 INT index, 4779 LCID lcid, 4780 BSTR *pbstrHelpString, 4781 DWORD *pdwHelpStringContext, 4782 BSTR *pbstrHelpStringDll); 4783 4784 HRESULT (STDMETHODCALLTYPE *GetAllCustData)( 4785 ITypeLib2* This, 4786 CUSTDATA *pCustData); 4787 4788 END_INTERFACE 4789 } ITypeLib2Vtbl; 4790 interface ITypeLib2 { 4791 CONST_VTBL ITypeLib2Vtbl* lpVtbl; 4792 }; 4793 4794 #ifdef COBJMACROS 4795 #ifndef WIDL_C_INLINE_WRAPPERS 4796 /*** IUnknown methods ***/ 4797 #define ITypeLib2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4798 #define ITypeLib2_AddRef(This) (This)->lpVtbl->AddRef(This) 4799 #define ITypeLib2_Release(This) (This)->lpVtbl->Release(This) 4800 /*** ITypeLib methods ***/ 4801 #define ITypeLib2_GetTypeInfoCount(This) (This)->lpVtbl->GetTypeInfoCount(This) 4802 #define ITypeLib2_GetTypeInfo(This,index,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,index,ppTInfo) 4803 #define ITypeLib2_GetTypeInfoType(This,index,pTKind) (This)->lpVtbl->GetTypeInfoType(This,index,pTKind) 4804 #define ITypeLib2_GetTypeInfoOfGuid(This,guid,ppTinfo) (This)->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo) 4805 #define ITypeLib2_GetLibAttr(This,ppTLibAttr) (This)->lpVtbl->GetLibAttr(This,ppTLibAttr) 4806 #define ITypeLib2_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) 4807 #define ITypeLib2_GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) 4808 #define ITypeLib2_IsName(This,szNameBuf,lHashVal,pfName) (This)->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName) 4809 #define ITypeLib2_FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) (This)->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) 4810 #define ITypeLib2_ReleaseTLibAttr(This,pTLibAttr) (This)->lpVtbl->ReleaseTLibAttr(This,pTLibAttr) 4811 /*** ITypeLib2 methods ***/ 4812 #define ITypeLib2_GetCustData(This,guid,pVarVal) (This)->lpVtbl->GetCustData(This,guid,pVarVal) 4813 #define ITypeLib2_GetLibStatistics(This,pcUniqueNames,pcchUniqueNames) (This)->lpVtbl->GetLibStatistics(This,pcUniqueNames,pcchUniqueNames) 4814 #define ITypeLib2_GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) (This)->lpVtbl->GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) 4815 #define ITypeLib2_GetAllCustData(This,pCustData) (This)->lpVtbl->GetAllCustData(This,pCustData) 4816 #else 4817 /*** IUnknown methods ***/ 4818 static FORCEINLINE HRESULT ITypeLib2_QueryInterface(ITypeLib2* This,REFIID riid,void **ppvObject) { 4819 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4820 } 4821 static FORCEINLINE ULONG ITypeLib2_AddRef(ITypeLib2* This) { 4822 return This->lpVtbl->AddRef(This); 4823 } 4824 static FORCEINLINE ULONG ITypeLib2_Release(ITypeLib2* This) { 4825 return This->lpVtbl->Release(This); 4826 } 4827 /*** ITypeLib methods ***/ 4828 static FORCEINLINE UINT ITypeLib2_GetTypeInfoCount(ITypeLib2* This) { 4829 return This->lpVtbl->GetTypeInfoCount(This); 4830 } 4831 static FORCEINLINE HRESULT ITypeLib2_GetTypeInfo(ITypeLib2* This,UINT index,ITypeInfo **ppTInfo) { 4832 return This->lpVtbl->GetTypeInfo(This,index,ppTInfo); 4833 } 4834 static FORCEINLINE HRESULT ITypeLib2_GetTypeInfoType(ITypeLib2* This,UINT index,TYPEKIND *pTKind) { 4835 return This->lpVtbl->GetTypeInfoType(This,index,pTKind); 4836 } 4837 static FORCEINLINE HRESULT ITypeLib2_GetTypeInfoOfGuid(ITypeLib2* This,REFGUID guid,ITypeInfo **ppTinfo) { 4838 return This->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo); 4839 } 4840 static FORCEINLINE HRESULT ITypeLib2_GetLibAttr(ITypeLib2* This,TLIBATTR **ppTLibAttr) { 4841 return This->lpVtbl->GetLibAttr(This,ppTLibAttr); 4842 } 4843 static FORCEINLINE HRESULT ITypeLib2_GetTypeComp(ITypeLib2* This,ITypeComp **ppTComp) { 4844 return This->lpVtbl->GetTypeComp(This,ppTComp); 4845 } 4846 static FORCEINLINE HRESULT ITypeLib2_GetDocumentation(ITypeLib2* This,INT index,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { 4847 return This->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); 4848 } 4849 static FORCEINLINE HRESULT ITypeLib2_IsName(ITypeLib2* This,LPOLESTR szNameBuf,ULONG lHashVal,WINBOOL *pfName) { 4850 return This->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName); 4851 } 4852 static FORCEINLINE HRESULT ITypeLib2_FindName(ITypeLib2* This,LPOLESTR szNameBuf,ULONG lHashVal,ITypeInfo **ppTInfo,MEMBERID *rgMemId,USHORT *pcFound) { 4853 return This->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound); 4854 } 4855 static FORCEINLINE void ITypeLib2_ReleaseTLibAttr(ITypeLib2* This,TLIBATTR *pTLibAttr) { 4856 This->lpVtbl->ReleaseTLibAttr(This,pTLibAttr); 4857 } 4858 /*** ITypeLib2 methods ***/ 4859 static FORCEINLINE HRESULT ITypeLib2_GetCustData(ITypeLib2* This,REFGUID guid,VARIANT *pVarVal) { 4860 return This->lpVtbl->GetCustData(This,guid,pVarVal); 4861 } 4862 static FORCEINLINE HRESULT ITypeLib2_GetLibStatistics(ITypeLib2* This,ULONG *pcUniqueNames,ULONG *pcchUniqueNames) { 4863 return This->lpVtbl->GetLibStatistics(This,pcUniqueNames,pcchUniqueNames); 4864 } 4865 static FORCEINLINE HRESULT ITypeLib2_GetDocumentation2(ITypeLib2* This,INT index,LCID lcid,BSTR *pbstrHelpString,DWORD *pdwHelpStringContext,BSTR *pbstrHelpStringDll) { 4866 return This->lpVtbl->GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll); 4867 } 4868 static FORCEINLINE HRESULT ITypeLib2_GetAllCustData(ITypeLib2* This,CUSTDATA *pCustData) { 4869 return This->lpVtbl->GetAllCustData(This,pCustData); 4870 } 4871 #endif 4872 #endif 4873 4874 #endif 4875 4876 HRESULT STDMETHODCALLTYPE ITypeLib2_GetCustData_Proxy( 4877 ITypeLib2* This, 4878 REFGUID guid, 4879 VARIANT *pVarVal); 4880 void __RPC_STUB ITypeLib2_GetCustData_Stub( 4881 IRpcStubBuffer* This, 4882 IRpcChannelBuffer* pRpcChannelBuffer, 4883 PRPC_MESSAGE pRpcMessage, 4884 DWORD* pdwStubPhase); 4885 HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetLibStatistics_Proxy( 4886 ITypeLib2* This, 4887 ULONG *pcUniqueNames, 4888 ULONG *pcchUniqueNames); 4889 void __RPC_STUB ITypeLib2_RemoteGetLibStatistics_Stub( 4890 IRpcStubBuffer* This, 4891 IRpcChannelBuffer* pRpcChannelBuffer, 4892 PRPC_MESSAGE pRpcMessage, 4893 DWORD* pdwStubPhase); 4894 HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetDocumentation2_Proxy( 4895 ITypeLib2* This, 4896 INT index, 4897 LCID lcid, 4898 DWORD refPtrFlags, 4899 BSTR *pbstrHelpString, 4900 DWORD *pdwHelpStringContext, 4901 BSTR *pbstrHelpStringDll); 4902 void __RPC_STUB ITypeLib2_RemoteGetDocumentation2_Stub( 4903 IRpcStubBuffer* This, 4904 IRpcChannelBuffer* pRpcChannelBuffer, 4905 PRPC_MESSAGE pRpcMessage, 4906 DWORD* pdwStubPhase); 4907 HRESULT STDMETHODCALLTYPE ITypeLib2_GetAllCustData_Proxy( 4908 ITypeLib2* This, 4909 CUSTDATA *pCustData); 4910 void __RPC_STUB ITypeLib2_GetAllCustData_Stub( 4911 IRpcStubBuffer* This, 4912 IRpcChannelBuffer* pRpcChannelBuffer, 4913 PRPC_MESSAGE pRpcMessage, 4914 DWORD* pdwStubPhase); 4915 HRESULT CALLBACK ITypeLib2_GetLibStatistics_Proxy( 4916 ITypeLib2* This, 4917 ULONG *pcUniqueNames, 4918 ULONG *pcchUniqueNames); 4919 HRESULT __RPC_STUB ITypeLib2_GetLibStatistics_Stub( 4920 ITypeLib2* This, 4921 ULONG *pcUniqueNames, 4922 ULONG *pcchUniqueNames); 4923 HRESULT CALLBACK ITypeLib2_GetDocumentation2_Proxy( 4924 ITypeLib2* This, 4925 INT index, 4926 LCID lcid, 4927 BSTR *pbstrHelpString, 4928 DWORD *pdwHelpStringContext, 4929 BSTR *pbstrHelpStringDll); 4930 HRESULT __RPC_STUB ITypeLib2_GetDocumentation2_Stub( 4931 ITypeLib2* This, 4932 INT index, 4933 LCID lcid, 4934 DWORD refPtrFlags, 4935 BSTR *pbstrHelpString, 4936 DWORD *pdwHelpStringContext, 4937 BSTR *pbstrHelpStringDll); 4938 4939 #endif /* __ITypeLib2_INTERFACE_DEFINED__ */ 4940 4941 4942 /***************************************************************************** 4943 * ITypeChangeEvents interface 4944 */ 4945 #ifndef __ITypeChangeEvents_INTERFACE_DEFINED__ 4946 #define __ITypeChangeEvents_INTERFACE_DEFINED__ 4947 4948 typedef ITypeChangeEvents *LPTYPECHANGEEVENTS; 4949 4950 typedef enum tagCHANGEKIND { 4951 CHANGEKIND_ADDMEMBER = 0, 4952 CHANGEKIND_DELETEMEMBER = 1, 4953 CHANGEKIND_SETNAMES = 2, 4954 CHANGEKIND_SETDOCUMENTATION = 3, 4955 CHANGEKIND_GENERAL = 4, 4956 CHANGEKIND_INVALIDATE = 5, 4957 CHANGEKIND_CHANGEFAILED = 6, 4958 CHANGEKIND_MAX = 7 4959 } CHANGEKIND; 4960 4961 DEFINE_GUID(IID_ITypeChangeEvents, 0x00020410, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4962 #if defined(__cplusplus) && !defined(CINTERFACE) 4963 MIDL_INTERFACE("00020410-0000-0000-c000-000000000046") 4964 ITypeChangeEvents : public IUnknown 4965 { 4966 virtual HRESULT STDMETHODCALLTYPE RequestTypeChange( 4967 CHANGEKIND changeKind, 4968 ITypeInfo *pTInfoBefore, 4969 LPOLESTR pStrName, 4970 INT *pfCancel) = 0; 4971 4972 virtual HRESULT STDMETHODCALLTYPE AfterTypeChange( 4973 CHANGEKIND changeKind, 4974 ITypeInfo *pTInfoAfter, 4975 LPOLESTR pStrName) = 0; 4976 4977 }; 4978 #ifdef __CRT_UUID_DECL 4979 __CRT_UUID_DECL(ITypeChangeEvents, 0x00020410, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4980 #endif 4981 #else 4982 typedef struct ITypeChangeEventsVtbl { 4983 BEGIN_INTERFACE 4984 4985 /*** IUnknown methods ***/ 4986 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4987 ITypeChangeEvents* This, 4988 REFIID riid, 4989 void **ppvObject); 4990 4991 ULONG (STDMETHODCALLTYPE *AddRef)( 4992 ITypeChangeEvents* This); 4993 4994 ULONG (STDMETHODCALLTYPE *Release)( 4995 ITypeChangeEvents* This); 4996 4997 /*** ITypeChangeEvents methods ***/ 4998 HRESULT (STDMETHODCALLTYPE *RequestTypeChange)( 4999 ITypeChangeEvents* This, 5000 CHANGEKIND changeKind, 5001 ITypeInfo *pTInfoBefore, 5002 LPOLESTR pStrName, 5003 INT *pfCancel); 5004 5005 HRESULT (STDMETHODCALLTYPE *AfterTypeChange)( 5006 ITypeChangeEvents* This, 5007 CHANGEKIND changeKind, 5008 ITypeInfo *pTInfoAfter, 5009 LPOLESTR pStrName); 5010 5011 END_INTERFACE 5012 } ITypeChangeEventsVtbl; 5013 interface ITypeChangeEvents { 5014 CONST_VTBL ITypeChangeEventsVtbl* lpVtbl; 5015 }; 5016 5017 #ifdef COBJMACROS 5018 #ifndef WIDL_C_INLINE_WRAPPERS 5019 /*** IUnknown methods ***/ 5020 #define ITypeChangeEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5021 #define ITypeChangeEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 5022 #define ITypeChangeEvents_Release(This) (This)->lpVtbl->Release(This) 5023 /*** ITypeChangeEvents methods ***/ 5024 #define ITypeChangeEvents_RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel) (This)->lpVtbl->RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel) 5025 #define ITypeChangeEvents_AfterTypeChange(This,changeKind,pTInfoAfter,pStrName) (This)->lpVtbl->AfterTypeChange(This,changeKind,pTInfoAfter,pStrName) 5026 #else 5027 /*** IUnknown methods ***/ 5028 static FORCEINLINE HRESULT ITypeChangeEvents_QueryInterface(ITypeChangeEvents* This,REFIID riid,void **ppvObject) { 5029 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5030 } 5031 static FORCEINLINE ULONG ITypeChangeEvents_AddRef(ITypeChangeEvents* This) { 5032 return This->lpVtbl->AddRef(This); 5033 } 5034 static FORCEINLINE ULONG ITypeChangeEvents_Release(ITypeChangeEvents* This) { 5035 return This->lpVtbl->Release(This); 5036 } 5037 /*** ITypeChangeEvents methods ***/ 5038 static FORCEINLINE HRESULT ITypeChangeEvents_RequestTypeChange(ITypeChangeEvents* This,CHANGEKIND changeKind,ITypeInfo *pTInfoBefore,LPOLESTR pStrName,INT *pfCancel) { 5039 return This->lpVtbl->RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel); 5040 } 5041 static FORCEINLINE HRESULT ITypeChangeEvents_AfterTypeChange(ITypeChangeEvents* This,CHANGEKIND changeKind,ITypeInfo *pTInfoAfter,LPOLESTR pStrName) { 5042 return This->lpVtbl->AfterTypeChange(This,changeKind,pTInfoAfter,pStrName); 5043 } 5044 #endif 5045 #endif 5046 5047 #endif 5048 5049 HRESULT STDMETHODCALLTYPE ITypeChangeEvents_RequestTypeChange_Proxy( 5050 ITypeChangeEvents* This, 5051 CHANGEKIND changeKind, 5052 ITypeInfo *pTInfoBefore, 5053 LPOLESTR pStrName, 5054 INT *pfCancel); 5055 void __RPC_STUB ITypeChangeEvents_RequestTypeChange_Stub( 5056 IRpcStubBuffer* This, 5057 IRpcChannelBuffer* pRpcChannelBuffer, 5058 PRPC_MESSAGE pRpcMessage, 5059 DWORD* pdwStubPhase); 5060 HRESULT STDMETHODCALLTYPE ITypeChangeEvents_AfterTypeChange_Proxy( 5061 ITypeChangeEvents* This, 5062 CHANGEKIND changeKind, 5063 ITypeInfo *pTInfoAfter, 5064 LPOLESTR pStrName); 5065 void __RPC_STUB ITypeChangeEvents_AfterTypeChange_Stub( 5066 IRpcStubBuffer* This, 5067 IRpcChannelBuffer* pRpcChannelBuffer, 5068 PRPC_MESSAGE pRpcMessage, 5069 DWORD* pdwStubPhase); 5070 5071 #endif /* __ITypeChangeEvents_INTERFACE_DEFINED__ */ 5072 5073 5074 /***************************************************************************** 5075 * IErrorInfo interface 5076 */ 5077 #ifndef __IErrorInfo_INTERFACE_DEFINED__ 5078 #define __IErrorInfo_INTERFACE_DEFINED__ 5079 5080 typedef IErrorInfo *LPERRORINFO; 5081 5082 DEFINE_GUID(IID_IErrorInfo, 0x1cf2b120, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); 5083 #if defined(__cplusplus) && !defined(CINTERFACE) 5084 MIDL_INTERFACE("1cf2b120-547d-101b-8e65-08002b2bd119") 5085 IErrorInfo : public IUnknown 5086 { 5087 virtual HRESULT STDMETHODCALLTYPE GetGUID( 5088 GUID *pGUID) = 0; 5089 5090 virtual HRESULT STDMETHODCALLTYPE GetSource( 5091 BSTR *pBstrSource) = 0; 5092 5093 virtual HRESULT STDMETHODCALLTYPE GetDescription( 5094 BSTR *pBstrDescription) = 0; 5095 5096 virtual HRESULT STDMETHODCALLTYPE GetHelpFile( 5097 BSTR *pBstrHelpFile) = 0; 5098 5099 virtual HRESULT STDMETHODCALLTYPE GetHelpContext( 5100 DWORD *pdwHelpContext) = 0; 5101 5102 }; 5103 #ifdef __CRT_UUID_DECL 5104 __CRT_UUID_DECL(IErrorInfo, 0x1cf2b120, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19) 5105 #endif 5106 #else 5107 typedef struct IErrorInfoVtbl { 5108 BEGIN_INTERFACE 5109 5110 /*** IUnknown methods ***/ 5111 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5112 IErrorInfo* This, 5113 REFIID riid, 5114 void **ppvObject); 5115 5116 ULONG (STDMETHODCALLTYPE *AddRef)( 5117 IErrorInfo* This); 5118 5119 ULONG (STDMETHODCALLTYPE *Release)( 5120 IErrorInfo* This); 5121 5122 /*** IErrorInfo methods ***/ 5123 HRESULT (STDMETHODCALLTYPE *GetGUID)( 5124 IErrorInfo* This, 5125 GUID *pGUID); 5126 5127 HRESULT (STDMETHODCALLTYPE *GetSource)( 5128 IErrorInfo* This, 5129 BSTR *pBstrSource); 5130 5131 HRESULT (STDMETHODCALLTYPE *GetDescription)( 5132 IErrorInfo* This, 5133 BSTR *pBstrDescription); 5134 5135 HRESULT (STDMETHODCALLTYPE *GetHelpFile)( 5136 IErrorInfo* This, 5137 BSTR *pBstrHelpFile); 5138 5139 HRESULT (STDMETHODCALLTYPE *GetHelpContext)( 5140 IErrorInfo* This, 5141 DWORD *pdwHelpContext); 5142 5143 END_INTERFACE 5144 } IErrorInfoVtbl; 5145 interface IErrorInfo { 5146 CONST_VTBL IErrorInfoVtbl* lpVtbl; 5147 }; 5148 5149 #ifdef COBJMACROS 5150 #ifndef WIDL_C_INLINE_WRAPPERS 5151 /*** IUnknown methods ***/ 5152 #define IErrorInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5153 #define IErrorInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 5154 #define IErrorInfo_Release(This) (This)->lpVtbl->Release(This) 5155 /*** IErrorInfo methods ***/ 5156 #define IErrorInfo_GetGUID(This,pGUID) (This)->lpVtbl->GetGUID(This,pGUID) 5157 #define IErrorInfo_GetSource(This,pBstrSource) (This)->lpVtbl->GetSource(This,pBstrSource) 5158 #define IErrorInfo_GetDescription(This,pBstrDescription) (This)->lpVtbl->GetDescription(This,pBstrDescription) 5159 #define IErrorInfo_GetHelpFile(This,pBstrHelpFile) (This)->lpVtbl->GetHelpFile(This,pBstrHelpFile) 5160 #define IErrorInfo_GetHelpContext(This,pdwHelpContext) (This)->lpVtbl->GetHelpContext(This,pdwHelpContext) 5161 #else 5162 /*** IUnknown methods ***/ 5163 static FORCEINLINE HRESULT IErrorInfo_QueryInterface(IErrorInfo* This,REFIID riid,void **ppvObject) { 5164 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5165 } 5166 static FORCEINLINE ULONG IErrorInfo_AddRef(IErrorInfo* This) { 5167 return This->lpVtbl->AddRef(This); 5168 } 5169 static FORCEINLINE ULONG IErrorInfo_Release(IErrorInfo* This) { 5170 return This->lpVtbl->Release(This); 5171 } 5172 /*** IErrorInfo methods ***/ 5173 static FORCEINLINE HRESULT IErrorInfo_GetGUID(IErrorInfo* This,GUID *pGUID) { 5174 return This->lpVtbl->GetGUID(This,pGUID); 5175 } 5176 static FORCEINLINE HRESULT IErrorInfo_GetSource(IErrorInfo* This,BSTR *pBstrSource) { 5177 return This->lpVtbl->GetSource(This,pBstrSource); 5178 } 5179 static FORCEINLINE HRESULT IErrorInfo_GetDescription(IErrorInfo* This,BSTR *pBstrDescription) { 5180 return This->lpVtbl->GetDescription(This,pBstrDescription); 5181 } 5182 static FORCEINLINE HRESULT IErrorInfo_GetHelpFile(IErrorInfo* This,BSTR *pBstrHelpFile) { 5183 return This->lpVtbl->GetHelpFile(This,pBstrHelpFile); 5184 } 5185 static FORCEINLINE HRESULT IErrorInfo_GetHelpContext(IErrorInfo* This,DWORD *pdwHelpContext) { 5186 return This->lpVtbl->GetHelpContext(This,pdwHelpContext); 5187 } 5188 #endif 5189 #endif 5190 5191 #endif 5192 5193 HRESULT STDMETHODCALLTYPE IErrorInfo_GetGUID_Proxy( 5194 IErrorInfo* This, 5195 GUID *pGUID); 5196 void __RPC_STUB IErrorInfo_GetGUID_Stub( 5197 IRpcStubBuffer* This, 5198 IRpcChannelBuffer* pRpcChannelBuffer, 5199 PRPC_MESSAGE pRpcMessage, 5200 DWORD* pdwStubPhase); 5201 HRESULT STDMETHODCALLTYPE IErrorInfo_GetSource_Proxy( 5202 IErrorInfo* This, 5203 BSTR *pBstrSource); 5204 void __RPC_STUB IErrorInfo_GetSource_Stub( 5205 IRpcStubBuffer* This, 5206 IRpcChannelBuffer* pRpcChannelBuffer, 5207 PRPC_MESSAGE pRpcMessage, 5208 DWORD* pdwStubPhase); 5209 HRESULT STDMETHODCALLTYPE IErrorInfo_GetDescription_Proxy( 5210 IErrorInfo* This, 5211 BSTR *pBstrDescription); 5212 void __RPC_STUB IErrorInfo_GetDescription_Stub( 5213 IRpcStubBuffer* This, 5214 IRpcChannelBuffer* pRpcChannelBuffer, 5215 PRPC_MESSAGE pRpcMessage, 5216 DWORD* pdwStubPhase); 5217 HRESULT STDMETHODCALLTYPE IErrorInfo_GetHelpFile_Proxy( 5218 IErrorInfo* This, 5219 BSTR *pBstrHelpFile); 5220 void __RPC_STUB IErrorInfo_GetHelpFile_Stub( 5221 IRpcStubBuffer* This, 5222 IRpcChannelBuffer* pRpcChannelBuffer, 5223 PRPC_MESSAGE pRpcMessage, 5224 DWORD* pdwStubPhase); 5225 HRESULT STDMETHODCALLTYPE IErrorInfo_GetHelpContext_Proxy( 5226 IErrorInfo* This, 5227 DWORD *pdwHelpContext); 5228 void __RPC_STUB IErrorInfo_GetHelpContext_Stub( 5229 IRpcStubBuffer* This, 5230 IRpcChannelBuffer* pRpcChannelBuffer, 5231 PRPC_MESSAGE pRpcMessage, 5232 DWORD* pdwStubPhase); 5233 5234 #endif /* __IErrorInfo_INTERFACE_DEFINED__ */ 5235 5236 5237 /***************************************************************************** 5238 * ICreateErrorInfo interface 5239 */ 5240 #ifndef __ICreateErrorInfo_INTERFACE_DEFINED__ 5241 #define __ICreateErrorInfo_INTERFACE_DEFINED__ 5242 5243 typedef ICreateErrorInfo *LPCREATEERRORINFO; 5244 5245 DEFINE_GUID(IID_ICreateErrorInfo, 0x22f03340, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); 5246 #if defined(__cplusplus) && !defined(CINTERFACE) 5247 MIDL_INTERFACE("22f03340-547d-101b-8e65-08002b2bd119") 5248 ICreateErrorInfo : public IUnknown 5249 { 5250 virtual HRESULT STDMETHODCALLTYPE SetGUID( 5251 REFGUID rguid) = 0; 5252 5253 virtual HRESULT STDMETHODCALLTYPE SetSource( 5254 LPOLESTR szSource) = 0; 5255 5256 virtual HRESULT STDMETHODCALLTYPE SetDescription( 5257 LPOLESTR szDescription) = 0; 5258 5259 virtual HRESULT STDMETHODCALLTYPE SetHelpFile( 5260 LPOLESTR szHelpFile) = 0; 5261 5262 virtual HRESULT STDMETHODCALLTYPE SetHelpContext( 5263 DWORD dwHelpContext) = 0; 5264 5265 }; 5266 #ifdef __CRT_UUID_DECL 5267 __CRT_UUID_DECL(ICreateErrorInfo, 0x22f03340, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19) 5268 #endif 5269 #else 5270 typedef struct ICreateErrorInfoVtbl { 5271 BEGIN_INTERFACE 5272 5273 /*** IUnknown methods ***/ 5274 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5275 ICreateErrorInfo* This, 5276 REFIID riid, 5277 void **ppvObject); 5278 5279 ULONG (STDMETHODCALLTYPE *AddRef)( 5280 ICreateErrorInfo* This); 5281 5282 ULONG (STDMETHODCALLTYPE *Release)( 5283 ICreateErrorInfo* This); 5284 5285 /*** ICreateErrorInfo methods ***/ 5286 HRESULT (STDMETHODCALLTYPE *SetGUID)( 5287 ICreateErrorInfo* This, 5288 REFGUID rguid); 5289 5290 HRESULT (STDMETHODCALLTYPE *SetSource)( 5291 ICreateErrorInfo* This, 5292 LPOLESTR szSource); 5293 5294 HRESULT (STDMETHODCALLTYPE *SetDescription)( 5295 ICreateErrorInfo* This, 5296 LPOLESTR szDescription); 5297 5298 HRESULT (STDMETHODCALLTYPE *SetHelpFile)( 5299 ICreateErrorInfo* This, 5300 LPOLESTR szHelpFile); 5301 5302 HRESULT (STDMETHODCALLTYPE *SetHelpContext)( 5303 ICreateErrorInfo* This, 5304 DWORD dwHelpContext); 5305 5306 END_INTERFACE 5307 } ICreateErrorInfoVtbl; 5308 interface ICreateErrorInfo { 5309 CONST_VTBL ICreateErrorInfoVtbl* lpVtbl; 5310 }; 5311 5312 #ifdef COBJMACROS 5313 #ifndef WIDL_C_INLINE_WRAPPERS 5314 /*** IUnknown methods ***/ 5315 #define ICreateErrorInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5316 #define ICreateErrorInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 5317 #define ICreateErrorInfo_Release(This) (This)->lpVtbl->Release(This) 5318 /*** ICreateErrorInfo methods ***/ 5319 #define ICreateErrorInfo_SetGUID(This,rguid) (This)->lpVtbl->SetGUID(This,rguid) 5320 #define ICreateErrorInfo_SetSource(This,szSource) (This)->lpVtbl->SetSource(This,szSource) 5321 #define ICreateErrorInfo_SetDescription(This,szDescription) (This)->lpVtbl->SetDescription(This,szDescription) 5322 #define ICreateErrorInfo_SetHelpFile(This,szHelpFile) (This)->lpVtbl->SetHelpFile(This,szHelpFile) 5323 #define ICreateErrorInfo_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) 5324 #else 5325 /*** IUnknown methods ***/ 5326 static FORCEINLINE HRESULT ICreateErrorInfo_QueryInterface(ICreateErrorInfo* This,REFIID riid,void **ppvObject) { 5327 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5328 } 5329 static FORCEINLINE ULONG ICreateErrorInfo_AddRef(ICreateErrorInfo* This) { 5330 return This->lpVtbl->AddRef(This); 5331 } 5332 static FORCEINLINE ULONG ICreateErrorInfo_Release(ICreateErrorInfo* This) { 5333 return This->lpVtbl->Release(This); 5334 } 5335 /*** ICreateErrorInfo methods ***/ 5336 static FORCEINLINE HRESULT ICreateErrorInfo_SetGUID(ICreateErrorInfo* This,REFGUID rguid) { 5337 return This->lpVtbl->SetGUID(This,rguid); 5338 } 5339 static FORCEINLINE HRESULT ICreateErrorInfo_SetSource(ICreateErrorInfo* This,LPOLESTR szSource) { 5340 return This->lpVtbl->SetSource(This,szSource); 5341 } 5342 static FORCEINLINE HRESULT ICreateErrorInfo_SetDescription(ICreateErrorInfo* This,LPOLESTR szDescription) { 5343 return This->lpVtbl->SetDescription(This,szDescription); 5344 } 5345 static FORCEINLINE HRESULT ICreateErrorInfo_SetHelpFile(ICreateErrorInfo* This,LPOLESTR szHelpFile) { 5346 return This->lpVtbl->SetHelpFile(This,szHelpFile); 5347 } 5348 static FORCEINLINE HRESULT ICreateErrorInfo_SetHelpContext(ICreateErrorInfo* This,DWORD dwHelpContext) { 5349 return This->lpVtbl->SetHelpContext(This,dwHelpContext); 5350 } 5351 #endif 5352 #endif 5353 5354 #endif 5355 5356 HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetGUID_Proxy( 5357 ICreateErrorInfo* This, 5358 REFGUID rguid); 5359 void __RPC_STUB ICreateErrorInfo_SetGUID_Stub( 5360 IRpcStubBuffer* This, 5361 IRpcChannelBuffer* pRpcChannelBuffer, 5362 PRPC_MESSAGE pRpcMessage, 5363 DWORD* pdwStubPhase); 5364 HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetSource_Proxy( 5365 ICreateErrorInfo* This, 5366 LPOLESTR szSource); 5367 void __RPC_STUB ICreateErrorInfo_SetSource_Stub( 5368 IRpcStubBuffer* This, 5369 IRpcChannelBuffer* pRpcChannelBuffer, 5370 PRPC_MESSAGE pRpcMessage, 5371 DWORD* pdwStubPhase); 5372 HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetDescription_Proxy( 5373 ICreateErrorInfo* This, 5374 LPOLESTR szDescription); 5375 void __RPC_STUB ICreateErrorInfo_SetDescription_Stub( 5376 IRpcStubBuffer* This, 5377 IRpcChannelBuffer* pRpcChannelBuffer, 5378 PRPC_MESSAGE pRpcMessage, 5379 DWORD* pdwStubPhase); 5380 HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetHelpFile_Proxy( 5381 ICreateErrorInfo* This, 5382 LPOLESTR szHelpFile); 5383 void __RPC_STUB ICreateErrorInfo_SetHelpFile_Stub( 5384 IRpcStubBuffer* This, 5385 IRpcChannelBuffer* pRpcChannelBuffer, 5386 PRPC_MESSAGE pRpcMessage, 5387 DWORD* pdwStubPhase); 5388 HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetHelpContext_Proxy( 5389 ICreateErrorInfo* This, 5390 DWORD dwHelpContext); 5391 void __RPC_STUB ICreateErrorInfo_SetHelpContext_Stub( 5392 IRpcStubBuffer* This, 5393 IRpcChannelBuffer* pRpcChannelBuffer, 5394 PRPC_MESSAGE pRpcMessage, 5395 DWORD* pdwStubPhase); 5396 5397 #endif /* __ICreateErrorInfo_INTERFACE_DEFINED__ */ 5398 5399 5400 /***************************************************************************** 5401 * ISupportErrorInfo interface 5402 */ 5403 #ifndef __ISupportErrorInfo_INTERFACE_DEFINED__ 5404 #define __ISupportErrorInfo_INTERFACE_DEFINED__ 5405 5406 typedef ISupportErrorInfo *LPSUPPORTERRORINFO; 5407 5408 DEFINE_GUID(IID_ISupportErrorInfo, 0xdf0b3d60, 0x548f, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); 5409 #if defined(__cplusplus) && !defined(CINTERFACE) 5410 MIDL_INTERFACE("df0b3d60-548f-101b-8e65-08002b2bd119") 5411 ISupportErrorInfo : public IUnknown 5412 { 5413 virtual HRESULT STDMETHODCALLTYPE InterfaceSupportsErrorInfo( 5414 REFIID riid) = 0; 5415 5416 }; 5417 #ifdef __CRT_UUID_DECL 5418 __CRT_UUID_DECL(ISupportErrorInfo, 0xdf0b3d60, 0x548f, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19) 5419 #endif 5420 #else 5421 typedef struct ISupportErrorInfoVtbl { 5422 BEGIN_INTERFACE 5423 5424 /*** IUnknown methods ***/ 5425 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5426 ISupportErrorInfo* This, 5427 REFIID riid, 5428 void **ppvObject); 5429 5430 ULONG (STDMETHODCALLTYPE *AddRef)( 5431 ISupportErrorInfo* This); 5432 5433 ULONG (STDMETHODCALLTYPE *Release)( 5434 ISupportErrorInfo* This); 5435 5436 /*** ISupportErrorInfo methods ***/ 5437 HRESULT (STDMETHODCALLTYPE *InterfaceSupportsErrorInfo)( 5438 ISupportErrorInfo* This, 5439 REFIID riid); 5440 5441 END_INTERFACE 5442 } ISupportErrorInfoVtbl; 5443 interface ISupportErrorInfo { 5444 CONST_VTBL ISupportErrorInfoVtbl* lpVtbl; 5445 }; 5446 5447 #ifdef COBJMACROS 5448 #ifndef WIDL_C_INLINE_WRAPPERS 5449 /*** IUnknown methods ***/ 5450 #define ISupportErrorInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5451 #define ISupportErrorInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 5452 #define ISupportErrorInfo_Release(This) (This)->lpVtbl->Release(This) 5453 /*** ISupportErrorInfo methods ***/ 5454 #define ISupportErrorInfo_InterfaceSupportsErrorInfo(This,riid) (This)->lpVtbl->InterfaceSupportsErrorInfo(This,riid) 5455 #else 5456 /*** IUnknown methods ***/ 5457 static FORCEINLINE HRESULT ISupportErrorInfo_QueryInterface(ISupportErrorInfo* This,REFIID riid,void **ppvObject) { 5458 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5459 } 5460 static FORCEINLINE ULONG ISupportErrorInfo_AddRef(ISupportErrorInfo* This) { 5461 return This->lpVtbl->AddRef(This); 5462 } 5463 static FORCEINLINE ULONG ISupportErrorInfo_Release(ISupportErrorInfo* This) { 5464 return This->lpVtbl->Release(This); 5465 } 5466 /*** ISupportErrorInfo methods ***/ 5467 static FORCEINLINE HRESULT ISupportErrorInfo_InterfaceSupportsErrorInfo(ISupportErrorInfo* This,REFIID riid) { 5468 return This->lpVtbl->InterfaceSupportsErrorInfo(This,riid); 5469 } 5470 #endif 5471 #endif 5472 5473 #endif 5474 5475 HRESULT STDMETHODCALLTYPE ISupportErrorInfo_InterfaceSupportsErrorInfo_Proxy( 5476 ISupportErrorInfo* This, 5477 REFIID riid); 5478 void __RPC_STUB ISupportErrorInfo_InterfaceSupportsErrorInfo_Stub( 5479 IRpcStubBuffer* This, 5480 IRpcChannelBuffer* pRpcChannelBuffer, 5481 PRPC_MESSAGE pRpcMessage, 5482 DWORD* pdwStubPhase); 5483 5484 #endif /* __ISupportErrorInfo_INTERFACE_DEFINED__ */ 5485 5486 5487 /***************************************************************************** 5488 * ITypeFactory interface 5489 */ 5490 #ifndef __ITypeFactory_INTERFACE_DEFINED__ 5491 #define __ITypeFactory_INTERFACE_DEFINED__ 5492 5493 DEFINE_GUID(IID_ITypeFactory, 0x0000002e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5494 #if defined(__cplusplus) && !defined(CINTERFACE) 5495 MIDL_INTERFACE("0000002e-0000-0000-c000-000000000046") 5496 ITypeFactory : public IUnknown 5497 { 5498 virtual HRESULT STDMETHODCALLTYPE CreateFromTypeInfo( 5499 ITypeInfo *pTypeInfo, 5500 REFIID riid, 5501 IUnknown **ppv) = 0; 5502 5503 }; 5504 #ifdef __CRT_UUID_DECL 5505 __CRT_UUID_DECL(ITypeFactory, 0x0000002e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5506 #endif 5507 #else 5508 typedef struct ITypeFactoryVtbl { 5509 BEGIN_INTERFACE 5510 5511 /*** IUnknown methods ***/ 5512 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5513 ITypeFactory* This, 5514 REFIID riid, 5515 void **ppvObject); 5516 5517 ULONG (STDMETHODCALLTYPE *AddRef)( 5518 ITypeFactory* This); 5519 5520 ULONG (STDMETHODCALLTYPE *Release)( 5521 ITypeFactory* This); 5522 5523 /*** ITypeFactory methods ***/ 5524 HRESULT (STDMETHODCALLTYPE *CreateFromTypeInfo)( 5525 ITypeFactory* This, 5526 ITypeInfo *pTypeInfo, 5527 REFIID riid, 5528 IUnknown **ppv); 5529 5530 END_INTERFACE 5531 } ITypeFactoryVtbl; 5532 interface ITypeFactory { 5533 CONST_VTBL ITypeFactoryVtbl* lpVtbl; 5534 }; 5535 5536 #ifdef COBJMACROS 5537 #ifndef WIDL_C_INLINE_WRAPPERS 5538 /*** IUnknown methods ***/ 5539 #define ITypeFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5540 #define ITypeFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 5541 #define ITypeFactory_Release(This) (This)->lpVtbl->Release(This) 5542 /*** ITypeFactory methods ***/ 5543 #define ITypeFactory_CreateFromTypeInfo(This,pTypeInfo,riid,ppv) (This)->lpVtbl->CreateFromTypeInfo(This,pTypeInfo,riid,ppv) 5544 #else 5545 /*** IUnknown methods ***/ 5546 static FORCEINLINE HRESULT ITypeFactory_QueryInterface(ITypeFactory* This,REFIID riid,void **ppvObject) { 5547 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5548 } 5549 static FORCEINLINE ULONG ITypeFactory_AddRef(ITypeFactory* This) { 5550 return This->lpVtbl->AddRef(This); 5551 } 5552 static FORCEINLINE ULONG ITypeFactory_Release(ITypeFactory* This) { 5553 return This->lpVtbl->Release(This); 5554 } 5555 /*** ITypeFactory methods ***/ 5556 static FORCEINLINE HRESULT ITypeFactory_CreateFromTypeInfo(ITypeFactory* This,ITypeInfo *pTypeInfo,REFIID riid,IUnknown **ppv) { 5557 return This->lpVtbl->CreateFromTypeInfo(This,pTypeInfo,riid,ppv); 5558 } 5559 #endif 5560 #endif 5561 5562 #endif 5563 5564 HRESULT STDMETHODCALLTYPE ITypeFactory_CreateFromTypeInfo_Proxy( 5565 ITypeFactory* This, 5566 ITypeInfo *pTypeInfo, 5567 REFIID riid, 5568 IUnknown **ppv); 5569 void __RPC_STUB ITypeFactory_CreateFromTypeInfo_Stub( 5570 IRpcStubBuffer* This, 5571 IRpcChannelBuffer* pRpcChannelBuffer, 5572 PRPC_MESSAGE pRpcMessage, 5573 DWORD* pdwStubPhase); 5574 5575 #endif /* __ITypeFactory_INTERFACE_DEFINED__ */ 5576 5577 5578 /***************************************************************************** 5579 * ITypeMarshal interface 5580 */ 5581 #ifndef __ITypeMarshal_INTERFACE_DEFINED__ 5582 #define __ITypeMarshal_INTERFACE_DEFINED__ 5583 5584 DEFINE_GUID(IID_ITypeMarshal, 0x0000002d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5585 #if defined(__cplusplus) && !defined(CINTERFACE) 5586 MIDL_INTERFACE("0000002d-0000-0000-c000-000000000046") 5587 ITypeMarshal : public IUnknown 5588 { 5589 virtual HRESULT STDMETHODCALLTYPE Size( 5590 PVOID pvType, 5591 DWORD dwDestContext, 5592 PVOID pvDestContext, 5593 ULONG *pSize) = 0; 5594 5595 virtual HRESULT STDMETHODCALLTYPE Marshal( 5596 PVOID pvType, 5597 DWORD dwDestContext, 5598 PVOID pvDestContext, 5599 ULONG cbBufferLength, 5600 BYTE *pBuffer, 5601 ULONG *pcbWritten) = 0; 5602 5603 virtual HRESULT STDMETHODCALLTYPE Unmarshal( 5604 PVOID pvType, 5605 DWORD dwFlags, 5606 ULONG cbBufferLength, 5607 BYTE *pBuffer, 5608 ULONG *pcbRead) = 0; 5609 5610 virtual HRESULT STDMETHODCALLTYPE Free( 5611 PVOID pvType) = 0; 5612 5613 }; 5614 #ifdef __CRT_UUID_DECL 5615 __CRT_UUID_DECL(ITypeMarshal, 0x0000002d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5616 #endif 5617 #else 5618 typedef struct ITypeMarshalVtbl { 5619 BEGIN_INTERFACE 5620 5621 /*** IUnknown methods ***/ 5622 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5623 ITypeMarshal* This, 5624 REFIID riid, 5625 void **ppvObject); 5626 5627 ULONG (STDMETHODCALLTYPE *AddRef)( 5628 ITypeMarshal* This); 5629 5630 ULONG (STDMETHODCALLTYPE *Release)( 5631 ITypeMarshal* This); 5632 5633 /*** ITypeMarshal methods ***/ 5634 HRESULT (STDMETHODCALLTYPE *Size)( 5635 ITypeMarshal* This, 5636 PVOID pvType, 5637 DWORD dwDestContext, 5638 PVOID pvDestContext, 5639 ULONG *pSize); 5640 5641 HRESULT (STDMETHODCALLTYPE *Marshal)( 5642 ITypeMarshal* This, 5643 PVOID pvType, 5644 DWORD dwDestContext, 5645 PVOID pvDestContext, 5646 ULONG cbBufferLength, 5647 BYTE *pBuffer, 5648 ULONG *pcbWritten); 5649 5650 HRESULT (STDMETHODCALLTYPE *Unmarshal)( 5651 ITypeMarshal* This, 5652 PVOID pvType, 5653 DWORD dwFlags, 5654 ULONG cbBufferLength, 5655 BYTE *pBuffer, 5656 ULONG *pcbRead); 5657 5658 HRESULT (STDMETHODCALLTYPE *Free)( 5659 ITypeMarshal* This, 5660 PVOID pvType); 5661 5662 END_INTERFACE 5663 } ITypeMarshalVtbl; 5664 interface ITypeMarshal { 5665 CONST_VTBL ITypeMarshalVtbl* lpVtbl; 5666 }; 5667 5668 #ifdef COBJMACROS 5669 #ifndef WIDL_C_INLINE_WRAPPERS 5670 /*** IUnknown methods ***/ 5671 #define ITypeMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5672 #define ITypeMarshal_AddRef(This) (This)->lpVtbl->AddRef(This) 5673 #define ITypeMarshal_Release(This) (This)->lpVtbl->Release(This) 5674 /*** ITypeMarshal methods ***/ 5675 #define ITypeMarshal_Size(This,pvType,dwDestContext,pvDestContext,pSize) (This)->lpVtbl->Size(This,pvType,dwDestContext,pvDestContext,pSize) 5676 #define ITypeMarshal_Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten) (This)->lpVtbl->Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten) 5677 #define ITypeMarshal_Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead) (This)->lpVtbl->Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead) 5678 #define ITypeMarshal_Free(This,pvType) (This)->lpVtbl->Free(This,pvType) 5679 #else 5680 /*** IUnknown methods ***/ 5681 static FORCEINLINE HRESULT ITypeMarshal_QueryInterface(ITypeMarshal* This,REFIID riid,void **ppvObject) { 5682 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5683 } 5684 static FORCEINLINE ULONG ITypeMarshal_AddRef(ITypeMarshal* This) { 5685 return This->lpVtbl->AddRef(This); 5686 } 5687 static FORCEINLINE ULONG ITypeMarshal_Release(ITypeMarshal* This) { 5688 return This->lpVtbl->Release(This); 5689 } 5690 /*** ITypeMarshal methods ***/ 5691 static FORCEINLINE HRESULT ITypeMarshal_Size(ITypeMarshal* This,PVOID pvType,DWORD dwDestContext,PVOID pvDestContext,ULONG *pSize) { 5692 return This->lpVtbl->Size(This,pvType,dwDestContext,pvDestContext,pSize); 5693 } 5694 static FORCEINLINE HRESULT ITypeMarshal_Marshal(ITypeMarshal* This,PVOID pvType,DWORD dwDestContext,PVOID pvDestContext,ULONG cbBufferLength,BYTE *pBuffer,ULONG *pcbWritten) { 5695 return This->lpVtbl->Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten); 5696 } 5697 static FORCEINLINE HRESULT ITypeMarshal_Unmarshal(ITypeMarshal* This,PVOID pvType,DWORD dwFlags,ULONG cbBufferLength,BYTE *pBuffer,ULONG *pcbRead) { 5698 return This->lpVtbl->Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead); 5699 } 5700 static FORCEINLINE HRESULT ITypeMarshal_Free(ITypeMarshal* This,PVOID pvType) { 5701 return This->lpVtbl->Free(This,pvType); 5702 } 5703 #endif 5704 #endif 5705 5706 #endif 5707 5708 HRESULT STDMETHODCALLTYPE ITypeMarshal_Size_Proxy( 5709 ITypeMarshal* This, 5710 PVOID pvType, 5711 DWORD dwDestContext, 5712 PVOID pvDestContext, 5713 ULONG *pSize); 5714 void __RPC_STUB ITypeMarshal_Size_Stub( 5715 IRpcStubBuffer* This, 5716 IRpcChannelBuffer* pRpcChannelBuffer, 5717 PRPC_MESSAGE pRpcMessage, 5718 DWORD* pdwStubPhase); 5719 HRESULT STDMETHODCALLTYPE ITypeMarshal_Marshal_Proxy( 5720 ITypeMarshal* This, 5721 PVOID pvType, 5722 DWORD dwDestContext, 5723 PVOID pvDestContext, 5724 ULONG cbBufferLength, 5725 BYTE *pBuffer, 5726 ULONG *pcbWritten); 5727 void __RPC_STUB ITypeMarshal_Marshal_Stub( 5728 IRpcStubBuffer* This, 5729 IRpcChannelBuffer* pRpcChannelBuffer, 5730 PRPC_MESSAGE pRpcMessage, 5731 DWORD* pdwStubPhase); 5732 HRESULT STDMETHODCALLTYPE ITypeMarshal_Unmarshal_Proxy( 5733 ITypeMarshal* This, 5734 PVOID pvType, 5735 DWORD dwFlags, 5736 ULONG cbBufferLength, 5737 BYTE *pBuffer, 5738 ULONG *pcbRead); 5739 void __RPC_STUB ITypeMarshal_Unmarshal_Stub( 5740 IRpcStubBuffer* This, 5741 IRpcChannelBuffer* pRpcChannelBuffer, 5742 PRPC_MESSAGE pRpcMessage, 5743 DWORD* pdwStubPhase); 5744 HRESULT STDMETHODCALLTYPE ITypeMarshal_Free_Proxy( 5745 ITypeMarshal* This, 5746 PVOID pvType); 5747 void __RPC_STUB ITypeMarshal_Free_Stub( 5748 IRpcStubBuffer* This, 5749 IRpcChannelBuffer* pRpcChannelBuffer, 5750 PRPC_MESSAGE pRpcMessage, 5751 DWORD* pdwStubPhase); 5752 5753 #endif /* __ITypeMarshal_INTERFACE_DEFINED__ */ 5754 5755 5756 /***************************************************************************** 5757 * IRecordInfo interface 5758 */ 5759 #ifndef __IRecordInfo_INTERFACE_DEFINED__ 5760 #define __IRecordInfo_INTERFACE_DEFINED__ 5761 5762 typedef IRecordInfo *LPRECORDINFO; 5763 5764 DEFINE_GUID(IID_IRecordInfo, 0x0000002f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5765 #if defined(__cplusplus) && !defined(CINTERFACE) 5766 MIDL_INTERFACE("0000002f-0000-0000-c000-000000000046") 5767 IRecordInfo : public IUnknown 5768 { 5769 virtual HRESULT STDMETHODCALLTYPE RecordInit( 5770 PVOID pvNew) = 0; 5771 5772 virtual HRESULT STDMETHODCALLTYPE RecordClear( 5773 PVOID pvExisting) = 0; 5774 5775 virtual HRESULT STDMETHODCALLTYPE RecordCopy( 5776 PVOID pvExisting, 5777 PVOID pvNew) = 0; 5778 5779 virtual HRESULT STDMETHODCALLTYPE GetGuid( 5780 GUID *pguid) = 0; 5781 5782 virtual HRESULT STDMETHODCALLTYPE GetName( 5783 BSTR *pbstrName) = 0; 5784 5785 virtual HRESULT STDMETHODCALLTYPE GetSize( 5786 ULONG *pcbSize) = 0; 5787 5788 virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( 5789 ITypeInfo **ppTypeInfo) = 0; 5790 5791 virtual HRESULT STDMETHODCALLTYPE GetField( 5792 PVOID pvData, 5793 LPCOLESTR szFieldName, 5794 VARIANT *pvarField) = 0; 5795 5796 virtual HRESULT STDMETHODCALLTYPE GetFieldNoCopy( 5797 PVOID pvData, 5798 LPCOLESTR szFieldName, 5799 VARIANT *pvarField, 5800 PVOID *ppvDataCArray) = 0; 5801 5802 virtual HRESULT STDMETHODCALLTYPE PutField( 5803 ULONG wFlags, 5804 PVOID pvData, 5805 LPCOLESTR szFieldName, 5806 VARIANT *pvarField) = 0; 5807 5808 virtual HRESULT STDMETHODCALLTYPE PutFieldNoCopy( 5809 ULONG wFlags, 5810 PVOID pvData, 5811 LPCOLESTR szFieldName, 5812 VARIANT *pvarField) = 0; 5813 5814 virtual HRESULT STDMETHODCALLTYPE GetFieldNames( 5815 ULONG *pcNames, 5816 BSTR *rgBstrNames) = 0; 5817 5818 virtual WINBOOL STDMETHODCALLTYPE IsMatchingType( 5819 IRecordInfo *pRecordInfo) = 0; 5820 5821 virtual PVOID STDMETHODCALLTYPE RecordCreate( 5822 ) = 0; 5823 5824 virtual HRESULT STDMETHODCALLTYPE RecordCreateCopy( 5825 PVOID pvSource, 5826 PVOID *ppvDest) = 0; 5827 5828 virtual HRESULT STDMETHODCALLTYPE RecordDestroy( 5829 PVOID pvRecord) = 0; 5830 5831 }; 5832 #ifdef __CRT_UUID_DECL 5833 __CRT_UUID_DECL(IRecordInfo, 0x0000002f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5834 #endif 5835 #else 5836 typedef struct IRecordInfoVtbl { 5837 BEGIN_INTERFACE 5838 5839 /*** IUnknown methods ***/ 5840 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5841 IRecordInfo* This, 5842 REFIID riid, 5843 void **ppvObject); 5844 5845 ULONG (STDMETHODCALLTYPE *AddRef)( 5846 IRecordInfo* This); 5847 5848 ULONG (STDMETHODCALLTYPE *Release)( 5849 IRecordInfo* This); 5850 5851 /*** IRecordInfo methods ***/ 5852 HRESULT (STDMETHODCALLTYPE *RecordInit)( 5853 IRecordInfo* This, 5854 PVOID pvNew); 5855 5856 HRESULT (STDMETHODCALLTYPE *RecordClear)( 5857 IRecordInfo* This, 5858 PVOID pvExisting); 5859 5860 HRESULT (STDMETHODCALLTYPE *RecordCopy)( 5861 IRecordInfo* This, 5862 PVOID pvExisting, 5863 PVOID pvNew); 5864 5865 HRESULT (STDMETHODCALLTYPE *GetGuid)( 5866 IRecordInfo* This, 5867 GUID *pguid); 5868 5869 HRESULT (STDMETHODCALLTYPE *GetName)( 5870 IRecordInfo* This, 5871 BSTR *pbstrName); 5872 5873 HRESULT (STDMETHODCALLTYPE *GetSize)( 5874 IRecordInfo* This, 5875 ULONG *pcbSize); 5876 5877 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 5878 IRecordInfo* This, 5879 ITypeInfo **ppTypeInfo); 5880 5881 HRESULT (STDMETHODCALLTYPE *GetField)( 5882 IRecordInfo* This, 5883 PVOID pvData, 5884 LPCOLESTR szFieldName, 5885 VARIANT *pvarField); 5886 5887 HRESULT (STDMETHODCALLTYPE *GetFieldNoCopy)( 5888 IRecordInfo* This, 5889 PVOID pvData, 5890 LPCOLESTR szFieldName, 5891 VARIANT *pvarField, 5892 PVOID *ppvDataCArray); 5893 5894 HRESULT (STDMETHODCALLTYPE *PutField)( 5895 IRecordInfo* This, 5896 ULONG wFlags, 5897 PVOID pvData, 5898 LPCOLESTR szFieldName, 5899 VARIANT *pvarField); 5900 5901 HRESULT (STDMETHODCALLTYPE *PutFieldNoCopy)( 5902 IRecordInfo* This, 5903 ULONG wFlags, 5904 PVOID pvData, 5905 LPCOLESTR szFieldName, 5906 VARIANT *pvarField); 5907 5908 HRESULT (STDMETHODCALLTYPE *GetFieldNames)( 5909 IRecordInfo* This, 5910 ULONG *pcNames, 5911 BSTR *rgBstrNames); 5912 5913 WINBOOL (STDMETHODCALLTYPE *IsMatchingType)( 5914 IRecordInfo* This, 5915 IRecordInfo *pRecordInfo); 5916 5917 PVOID (STDMETHODCALLTYPE *RecordCreate)( 5918 IRecordInfo* This); 5919 5920 HRESULT (STDMETHODCALLTYPE *RecordCreateCopy)( 5921 IRecordInfo* This, 5922 PVOID pvSource, 5923 PVOID *ppvDest); 5924 5925 HRESULT (STDMETHODCALLTYPE *RecordDestroy)( 5926 IRecordInfo* This, 5927 PVOID pvRecord); 5928 5929 END_INTERFACE 5930 } IRecordInfoVtbl; 5931 interface IRecordInfo { 5932 CONST_VTBL IRecordInfoVtbl* lpVtbl; 5933 }; 5934 5935 #ifdef COBJMACROS 5936 #ifndef WIDL_C_INLINE_WRAPPERS 5937 /*** IUnknown methods ***/ 5938 #define IRecordInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5939 #define IRecordInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 5940 #define IRecordInfo_Release(This) (This)->lpVtbl->Release(This) 5941 /*** IRecordInfo methods ***/ 5942 #define IRecordInfo_RecordInit(This,pvNew) (This)->lpVtbl->RecordInit(This,pvNew) 5943 #define IRecordInfo_RecordClear(This,pvExisting) (This)->lpVtbl->RecordClear(This,pvExisting) 5944 #define IRecordInfo_RecordCopy(This,pvExisting,pvNew) (This)->lpVtbl->RecordCopy(This,pvExisting,pvNew) 5945 #define IRecordInfo_GetGuid(This,pguid) (This)->lpVtbl->GetGuid(This,pguid) 5946 #define IRecordInfo_GetName(This,pbstrName) (This)->lpVtbl->GetName(This,pbstrName) 5947 #define IRecordInfo_GetSize(This,pcbSize) (This)->lpVtbl->GetSize(This,pcbSize) 5948 #define IRecordInfo_GetTypeInfo(This,ppTypeInfo) (This)->lpVtbl->GetTypeInfo(This,ppTypeInfo) 5949 #define IRecordInfo_GetField(This,pvData,szFieldName,pvarField) (This)->lpVtbl->GetField(This,pvData,szFieldName,pvarField) 5950 #define IRecordInfo_GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray) (This)->lpVtbl->GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray) 5951 #define IRecordInfo_PutField(This,wFlags,pvData,szFieldName,pvarField) (This)->lpVtbl->PutField(This,wFlags,pvData,szFieldName,pvarField) 5952 #define IRecordInfo_PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField) (This)->lpVtbl->PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField) 5953 #define IRecordInfo_GetFieldNames(This,pcNames,rgBstrNames) (This)->lpVtbl->GetFieldNames(This,pcNames,rgBstrNames) 5954 #define IRecordInfo_IsMatchingType(This,pRecordInfo) (This)->lpVtbl->IsMatchingType(This,pRecordInfo) 5955 #define IRecordInfo_RecordCreate(This) (This)->lpVtbl->RecordCreate(This) 5956 #define IRecordInfo_RecordCreateCopy(This,pvSource,ppvDest) (This)->lpVtbl->RecordCreateCopy(This,pvSource,ppvDest) 5957 #define IRecordInfo_RecordDestroy(This,pvRecord) (This)->lpVtbl->RecordDestroy(This,pvRecord) 5958 #else 5959 /*** IUnknown methods ***/ 5960 static FORCEINLINE HRESULT IRecordInfo_QueryInterface(IRecordInfo* This,REFIID riid,void **ppvObject) { 5961 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5962 } 5963 static FORCEINLINE ULONG IRecordInfo_AddRef(IRecordInfo* This) { 5964 return This->lpVtbl->AddRef(This); 5965 } 5966 static FORCEINLINE ULONG IRecordInfo_Release(IRecordInfo* This) { 5967 return This->lpVtbl->Release(This); 5968 } 5969 /*** IRecordInfo methods ***/ 5970 static FORCEINLINE HRESULT IRecordInfo_RecordInit(IRecordInfo* This,PVOID pvNew) { 5971 return This->lpVtbl->RecordInit(This,pvNew); 5972 } 5973 static FORCEINLINE HRESULT IRecordInfo_RecordClear(IRecordInfo* This,PVOID pvExisting) { 5974 return This->lpVtbl->RecordClear(This,pvExisting); 5975 } 5976 static FORCEINLINE HRESULT IRecordInfo_RecordCopy(IRecordInfo* This,PVOID pvExisting,PVOID pvNew) { 5977 return This->lpVtbl->RecordCopy(This,pvExisting,pvNew); 5978 } 5979 static FORCEINLINE HRESULT IRecordInfo_GetGuid(IRecordInfo* This,GUID *pguid) { 5980 return This->lpVtbl->GetGuid(This,pguid); 5981 } 5982 static FORCEINLINE HRESULT IRecordInfo_GetName(IRecordInfo* This,BSTR *pbstrName) { 5983 return This->lpVtbl->GetName(This,pbstrName); 5984 } 5985 static FORCEINLINE HRESULT IRecordInfo_GetSize(IRecordInfo* This,ULONG *pcbSize) { 5986 return This->lpVtbl->GetSize(This,pcbSize); 5987 } 5988 static FORCEINLINE HRESULT IRecordInfo_GetTypeInfo(IRecordInfo* This,ITypeInfo **ppTypeInfo) { 5989 return This->lpVtbl->GetTypeInfo(This,ppTypeInfo); 5990 } 5991 static FORCEINLINE HRESULT IRecordInfo_GetField(IRecordInfo* This,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField) { 5992 return This->lpVtbl->GetField(This,pvData,szFieldName,pvarField); 5993 } 5994 static FORCEINLINE HRESULT IRecordInfo_GetFieldNoCopy(IRecordInfo* This,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField,PVOID *ppvDataCArray) { 5995 return This->lpVtbl->GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray); 5996 } 5997 static FORCEINLINE HRESULT IRecordInfo_PutField(IRecordInfo* This,ULONG wFlags,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField) { 5998 return This->lpVtbl->PutField(This,wFlags,pvData,szFieldName,pvarField); 5999 } 6000 static FORCEINLINE HRESULT IRecordInfo_PutFieldNoCopy(IRecordInfo* This,ULONG wFlags,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField) { 6001 return This->lpVtbl->PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField); 6002 } 6003 static FORCEINLINE HRESULT IRecordInfo_GetFieldNames(IRecordInfo* This,ULONG *pcNames,BSTR *rgBstrNames) { 6004 return This->lpVtbl->GetFieldNames(This,pcNames,rgBstrNames); 6005 } 6006 static FORCEINLINE WINBOOL IRecordInfo_IsMatchingType(IRecordInfo* This,IRecordInfo *pRecordInfo) { 6007 return This->lpVtbl->IsMatchingType(This,pRecordInfo); 6008 } 6009 static FORCEINLINE PVOID IRecordInfo_RecordCreate(IRecordInfo* This) { 6010 return This->lpVtbl->RecordCreate(This); 6011 } 6012 static FORCEINLINE HRESULT IRecordInfo_RecordCreateCopy(IRecordInfo* This,PVOID pvSource,PVOID *ppvDest) { 6013 return This->lpVtbl->RecordCreateCopy(This,pvSource,ppvDest); 6014 } 6015 static FORCEINLINE HRESULT IRecordInfo_RecordDestroy(IRecordInfo* This,PVOID pvRecord) { 6016 return This->lpVtbl->RecordDestroy(This,pvRecord); 6017 } 6018 #endif 6019 #endif 6020 6021 #endif 6022 6023 HRESULT STDMETHODCALLTYPE IRecordInfo_RecordInit_Proxy( 6024 IRecordInfo* This, 6025 PVOID pvNew); 6026 void __RPC_STUB IRecordInfo_RecordInit_Stub( 6027 IRpcStubBuffer* This, 6028 IRpcChannelBuffer* pRpcChannelBuffer, 6029 PRPC_MESSAGE pRpcMessage, 6030 DWORD* pdwStubPhase); 6031 HRESULT STDMETHODCALLTYPE IRecordInfo_RecordClear_Proxy( 6032 IRecordInfo* This, 6033 PVOID pvExisting); 6034 void __RPC_STUB IRecordInfo_RecordClear_Stub( 6035 IRpcStubBuffer* This, 6036 IRpcChannelBuffer* pRpcChannelBuffer, 6037 PRPC_MESSAGE pRpcMessage, 6038 DWORD* pdwStubPhase); 6039 HRESULT STDMETHODCALLTYPE IRecordInfo_RecordCopy_Proxy( 6040 IRecordInfo* This, 6041 PVOID pvExisting, 6042 PVOID pvNew); 6043 void __RPC_STUB IRecordInfo_RecordCopy_Stub( 6044 IRpcStubBuffer* This, 6045 IRpcChannelBuffer* pRpcChannelBuffer, 6046 PRPC_MESSAGE pRpcMessage, 6047 DWORD* pdwStubPhase); 6048 HRESULT STDMETHODCALLTYPE IRecordInfo_GetGuid_Proxy( 6049 IRecordInfo* This, 6050 GUID *pguid); 6051 void __RPC_STUB IRecordInfo_GetGuid_Stub( 6052 IRpcStubBuffer* This, 6053 IRpcChannelBuffer* pRpcChannelBuffer, 6054 PRPC_MESSAGE pRpcMessage, 6055 DWORD* pdwStubPhase); 6056 HRESULT STDMETHODCALLTYPE IRecordInfo_GetName_Proxy( 6057 IRecordInfo* This, 6058 BSTR *pbstrName); 6059 void __RPC_STUB IRecordInfo_GetName_Stub( 6060 IRpcStubBuffer* This, 6061 IRpcChannelBuffer* pRpcChannelBuffer, 6062 PRPC_MESSAGE pRpcMessage, 6063 DWORD* pdwStubPhase); 6064 HRESULT STDMETHODCALLTYPE IRecordInfo_GetSize_Proxy( 6065 IRecordInfo* This, 6066 ULONG *pcbSize); 6067 void __RPC_STUB IRecordInfo_GetSize_Stub( 6068 IRpcStubBuffer* This, 6069 IRpcChannelBuffer* pRpcChannelBuffer, 6070 PRPC_MESSAGE pRpcMessage, 6071 DWORD* pdwStubPhase); 6072 HRESULT STDMETHODCALLTYPE IRecordInfo_GetTypeInfo_Proxy( 6073 IRecordInfo* This, 6074 ITypeInfo **ppTypeInfo); 6075 void __RPC_STUB IRecordInfo_GetTypeInfo_Stub( 6076 IRpcStubBuffer* This, 6077 IRpcChannelBuffer* pRpcChannelBuffer, 6078 PRPC_MESSAGE pRpcMessage, 6079 DWORD* pdwStubPhase); 6080 HRESULT STDMETHODCALLTYPE IRecordInfo_GetField_Proxy( 6081 IRecordInfo* This, 6082 PVOID pvData, 6083 LPCOLESTR szFieldName, 6084 VARIANT *pvarField); 6085 void __RPC_STUB IRecordInfo_GetField_Stub( 6086 IRpcStubBuffer* This, 6087 IRpcChannelBuffer* pRpcChannelBuffer, 6088 PRPC_MESSAGE pRpcMessage, 6089 DWORD* pdwStubPhase); 6090 HRESULT STDMETHODCALLTYPE IRecordInfo_GetFieldNoCopy_Proxy( 6091 IRecordInfo* This, 6092 PVOID pvData, 6093 LPCOLESTR szFieldName, 6094 VARIANT *pvarField, 6095 PVOID *ppvDataCArray); 6096 void __RPC_STUB IRecordInfo_GetFieldNoCopy_Stub( 6097 IRpcStubBuffer* This, 6098 IRpcChannelBuffer* pRpcChannelBuffer, 6099 PRPC_MESSAGE pRpcMessage, 6100 DWORD* pdwStubPhase); 6101 HRESULT STDMETHODCALLTYPE IRecordInfo_PutField_Proxy( 6102 IRecordInfo* This, 6103 ULONG wFlags, 6104 PVOID pvData, 6105 LPCOLESTR szFieldName, 6106 VARIANT *pvarField); 6107 void __RPC_STUB IRecordInfo_PutField_Stub( 6108 IRpcStubBuffer* This, 6109 IRpcChannelBuffer* pRpcChannelBuffer, 6110 PRPC_MESSAGE pRpcMessage, 6111 DWORD* pdwStubPhase); 6112 HRESULT STDMETHODCALLTYPE IRecordInfo_PutFieldNoCopy_Proxy( 6113 IRecordInfo* This, 6114 ULONG wFlags, 6115 PVOID pvData, 6116 LPCOLESTR szFieldName, 6117 VARIANT *pvarField); 6118 void __RPC_STUB IRecordInfo_PutFieldNoCopy_Stub( 6119 IRpcStubBuffer* This, 6120 IRpcChannelBuffer* pRpcChannelBuffer, 6121 PRPC_MESSAGE pRpcMessage, 6122 DWORD* pdwStubPhase); 6123 HRESULT STDMETHODCALLTYPE IRecordInfo_GetFieldNames_Proxy( 6124 IRecordInfo* This, 6125 ULONG *pcNames, 6126 BSTR *rgBstrNames); 6127 void __RPC_STUB IRecordInfo_GetFieldNames_Stub( 6128 IRpcStubBuffer* This, 6129 IRpcChannelBuffer* pRpcChannelBuffer, 6130 PRPC_MESSAGE pRpcMessage, 6131 DWORD* pdwStubPhase); 6132 WINBOOL STDMETHODCALLTYPE IRecordInfo_IsMatchingType_Proxy( 6133 IRecordInfo* This, 6134 IRecordInfo *pRecordInfo); 6135 void __RPC_STUB IRecordInfo_IsMatchingType_Stub( 6136 IRpcStubBuffer* This, 6137 IRpcChannelBuffer* pRpcChannelBuffer, 6138 PRPC_MESSAGE pRpcMessage, 6139 DWORD* pdwStubPhase); 6140 PVOID STDMETHODCALLTYPE IRecordInfo_RecordCreate_Proxy( 6141 IRecordInfo* This); 6142 void __RPC_STUB IRecordInfo_RecordCreate_Stub( 6143 IRpcStubBuffer* This, 6144 IRpcChannelBuffer* pRpcChannelBuffer, 6145 PRPC_MESSAGE pRpcMessage, 6146 DWORD* pdwStubPhase); 6147 HRESULT STDMETHODCALLTYPE IRecordInfo_RecordCreateCopy_Proxy( 6148 IRecordInfo* This, 6149 PVOID pvSource, 6150 PVOID *ppvDest); 6151 void __RPC_STUB IRecordInfo_RecordCreateCopy_Stub( 6152 IRpcStubBuffer* This, 6153 IRpcChannelBuffer* pRpcChannelBuffer, 6154 PRPC_MESSAGE pRpcMessage, 6155 DWORD* pdwStubPhase); 6156 HRESULT STDMETHODCALLTYPE IRecordInfo_RecordDestroy_Proxy( 6157 IRecordInfo* This, 6158 PVOID pvRecord); 6159 void __RPC_STUB IRecordInfo_RecordDestroy_Stub( 6160 IRpcStubBuffer* This, 6161 IRpcChannelBuffer* pRpcChannelBuffer, 6162 PRPC_MESSAGE pRpcMessage, 6163 DWORD* pdwStubPhase); 6164 6165 #endif /* __IRecordInfo_INTERFACE_DEFINED__ */ 6166 6167 6168 /***************************************************************************** 6169 * IErrorLog interface 6170 */ 6171 #ifndef __IErrorLog_INTERFACE_DEFINED__ 6172 #define __IErrorLog_INTERFACE_DEFINED__ 6173 6174 typedef IErrorLog *LPERRORLOG; 6175 6176 DEFINE_GUID(IID_IErrorLog, 0x3127ca40, 0x446e, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51); 6177 #if defined(__cplusplus) && !defined(CINTERFACE) 6178 MIDL_INTERFACE("3127ca40-446e-11ce-8135-00aa004bb851") 6179 IErrorLog : public IUnknown 6180 { 6181 virtual HRESULT STDMETHODCALLTYPE AddError( 6182 LPCOLESTR pszPropName, 6183 EXCEPINFO *pExcepInfo) = 0; 6184 6185 }; 6186 #ifdef __CRT_UUID_DECL 6187 __CRT_UUID_DECL(IErrorLog, 0x3127ca40, 0x446e, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51) 6188 #endif 6189 #else 6190 typedef struct IErrorLogVtbl { 6191 BEGIN_INTERFACE 6192 6193 /*** IUnknown methods ***/ 6194 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6195 IErrorLog* This, 6196 REFIID riid, 6197 void **ppvObject); 6198 6199 ULONG (STDMETHODCALLTYPE *AddRef)( 6200 IErrorLog* This); 6201 6202 ULONG (STDMETHODCALLTYPE *Release)( 6203 IErrorLog* This); 6204 6205 /*** IErrorLog methods ***/ 6206 HRESULT (STDMETHODCALLTYPE *AddError)( 6207 IErrorLog* This, 6208 LPCOLESTR pszPropName, 6209 EXCEPINFO *pExcepInfo); 6210 6211 END_INTERFACE 6212 } IErrorLogVtbl; 6213 interface IErrorLog { 6214 CONST_VTBL IErrorLogVtbl* lpVtbl; 6215 }; 6216 6217 #ifdef COBJMACROS 6218 #ifndef WIDL_C_INLINE_WRAPPERS 6219 /*** IUnknown methods ***/ 6220 #define IErrorLog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6221 #define IErrorLog_AddRef(This) (This)->lpVtbl->AddRef(This) 6222 #define IErrorLog_Release(This) (This)->lpVtbl->Release(This) 6223 /*** IErrorLog methods ***/ 6224 #define IErrorLog_AddError(This,pszPropName,pExcepInfo) (This)->lpVtbl->AddError(This,pszPropName,pExcepInfo) 6225 #else 6226 /*** IUnknown methods ***/ 6227 static FORCEINLINE HRESULT IErrorLog_QueryInterface(IErrorLog* This,REFIID riid,void **ppvObject) { 6228 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6229 } 6230 static FORCEINLINE ULONG IErrorLog_AddRef(IErrorLog* This) { 6231 return This->lpVtbl->AddRef(This); 6232 } 6233 static FORCEINLINE ULONG IErrorLog_Release(IErrorLog* This) { 6234 return This->lpVtbl->Release(This); 6235 } 6236 /*** IErrorLog methods ***/ 6237 static FORCEINLINE HRESULT IErrorLog_AddError(IErrorLog* This,LPCOLESTR pszPropName,EXCEPINFO *pExcepInfo) { 6238 return This->lpVtbl->AddError(This,pszPropName,pExcepInfo); 6239 } 6240 #endif 6241 #endif 6242 6243 #endif 6244 6245 HRESULT STDMETHODCALLTYPE IErrorLog_AddError_Proxy( 6246 IErrorLog* This, 6247 LPCOLESTR pszPropName, 6248 EXCEPINFO *pExcepInfo); 6249 void __RPC_STUB IErrorLog_AddError_Stub( 6250 IRpcStubBuffer* This, 6251 IRpcChannelBuffer* pRpcChannelBuffer, 6252 PRPC_MESSAGE pRpcMessage, 6253 DWORD* pdwStubPhase); 6254 6255 #endif /* __IErrorLog_INTERFACE_DEFINED__ */ 6256 6257 6258 /***************************************************************************** 6259 * IPropertyBag interface 6260 */ 6261 #ifndef __IPropertyBag_INTERFACE_DEFINED__ 6262 #define __IPropertyBag_INTERFACE_DEFINED__ 6263 6264 typedef IPropertyBag *LPPROPERTYBAG; 6265 6266 DEFINE_GUID(IID_IPropertyBag, 0x55272a00, 0x42cb, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51); 6267 #if defined(__cplusplus) && !defined(CINTERFACE) 6268 MIDL_INTERFACE("55272a00-42cb-11ce-8135-00aa004bb851") 6269 IPropertyBag : public IUnknown 6270 { 6271 virtual HRESULT STDMETHODCALLTYPE Read( 6272 LPCOLESTR pszPropName, 6273 VARIANT *pVar, 6274 IErrorLog *pErrorLog) = 0; 6275 6276 virtual HRESULT STDMETHODCALLTYPE Write( 6277 LPCOLESTR pszPropName, 6278 VARIANT *pVar) = 0; 6279 6280 }; 6281 #ifdef __CRT_UUID_DECL 6282 __CRT_UUID_DECL(IPropertyBag, 0x55272a00, 0x42cb, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51) 6283 #endif 6284 #else 6285 typedef struct IPropertyBagVtbl { 6286 BEGIN_INTERFACE 6287 6288 /*** IUnknown methods ***/ 6289 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6290 IPropertyBag* This, 6291 REFIID riid, 6292 void **ppvObject); 6293 6294 ULONG (STDMETHODCALLTYPE *AddRef)( 6295 IPropertyBag* This); 6296 6297 ULONG (STDMETHODCALLTYPE *Release)( 6298 IPropertyBag* This); 6299 6300 /*** IPropertyBag methods ***/ 6301 HRESULT (STDMETHODCALLTYPE *Read)( 6302 IPropertyBag* This, 6303 LPCOLESTR pszPropName, 6304 VARIANT *pVar, 6305 IErrorLog *pErrorLog); 6306 6307 HRESULT (STDMETHODCALLTYPE *Write)( 6308 IPropertyBag* This, 6309 LPCOLESTR pszPropName, 6310 VARIANT *pVar); 6311 6312 END_INTERFACE 6313 } IPropertyBagVtbl; 6314 interface IPropertyBag { 6315 CONST_VTBL IPropertyBagVtbl* lpVtbl; 6316 }; 6317 6318 #ifdef COBJMACROS 6319 #ifndef WIDL_C_INLINE_WRAPPERS 6320 /*** IUnknown methods ***/ 6321 #define IPropertyBag_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6322 #define IPropertyBag_AddRef(This) (This)->lpVtbl->AddRef(This) 6323 #define IPropertyBag_Release(This) (This)->lpVtbl->Release(This) 6324 /*** IPropertyBag methods ***/ 6325 #define IPropertyBag_Read(This,pszPropName,pVar,pErrorLog) (This)->lpVtbl->Read(This,pszPropName,pVar,pErrorLog) 6326 #define IPropertyBag_Write(This,pszPropName,pVar) (This)->lpVtbl->Write(This,pszPropName,pVar) 6327 #else 6328 /*** IUnknown methods ***/ 6329 static FORCEINLINE HRESULT IPropertyBag_QueryInterface(IPropertyBag* This,REFIID riid,void **ppvObject) { 6330 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6331 } 6332 static FORCEINLINE ULONG IPropertyBag_AddRef(IPropertyBag* This) { 6333 return This->lpVtbl->AddRef(This); 6334 } 6335 static FORCEINLINE ULONG IPropertyBag_Release(IPropertyBag* This) { 6336 return This->lpVtbl->Release(This); 6337 } 6338 /*** IPropertyBag methods ***/ 6339 static FORCEINLINE HRESULT IPropertyBag_Read(IPropertyBag* This,LPCOLESTR pszPropName,VARIANT *pVar,IErrorLog *pErrorLog) { 6340 return This->lpVtbl->Read(This,pszPropName,pVar,pErrorLog); 6341 } 6342 static FORCEINLINE HRESULT IPropertyBag_Write(IPropertyBag* This,LPCOLESTR pszPropName,VARIANT *pVar) { 6343 return This->lpVtbl->Write(This,pszPropName,pVar); 6344 } 6345 #endif 6346 #endif 6347 6348 #endif 6349 6350 HRESULT STDMETHODCALLTYPE IPropertyBag_RemoteRead_Proxy( 6351 IPropertyBag* This, 6352 LPCOLESTR pszPropName, 6353 VARIANT *pVar, 6354 IErrorLog *pErrorLog, 6355 DWORD varType, 6356 IUnknown *pUnkObj); 6357 void __RPC_STUB IPropertyBag_RemoteRead_Stub( 6358 IRpcStubBuffer* This, 6359 IRpcChannelBuffer* pRpcChannelBuffer, 6360 PRPC_MESSAGE pRpcMessage, 6361 DWORD* pdwStubPhase); 6362 HRESULT STDMETHODCALLTYPE IPropertyBag_Write_Proxy( 6363 IPropertyBag* This, 6364 LPCOLESTR pszPropName, 6365 VARIANT *pVar); 6366 void __RPC_STUB IPropertyBag_Write_Stub( 6367 IRpcStubBuffer* This, 6368 IRpcChannelBuffer* pRpcChannelBuffer, 6369 PRPC_MESSAGE pRpcMessage, 6370 DWORD* pdwStubPhase); 6371 HRESULT CALLBACK IPropertyBag_Read_Proxy( 6372 IPropertyBag* This, 6373 LPCOLESTR pszPropName, 6374 VARIANT *pVar, 6375 IErrorLog *pErrorLog); 6376 HRESULT __RPC_STUB IPropertyBag_Read_Stub( 6377 IPropertyBag* This, 6378 LPCOLESTR pszPropName, 6379 VARIANT *pVar, 6380 IErrorLog *pErrorLog, 6381 DWORD varType, 6382 IUnknown *pUnkObj); 6383 6384 #endif /* __IPropertyBag_INTERFACE_DEFINED__ */ 6385 6386 #endif 6387 /* Begin additional prototypes for all interfaces */ 6388 6389 ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *); 6390 unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *); 6391 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); 6392 void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *); 6393 ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); 6394 unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); 6395 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); 6396 void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); 6397 ULONG __RPC_USER CLEANLOCALSTORAGE_UserSize (ULONG *, ULONG, CLEANLOCALSTORAGE *); 6398 unsigned char * __RPC_USER CLEANLOCALSTORAGE_UserMarshal (ULONG *, unsigned char *, CLEANLOCALSTORAGE *); 6399 unsigned char * __RPC_USER CLEANLOCALSTORAGE_UserUnmarshal(ULONG *, unsigned char *, CLEANLOCALSTORAGE *); 6400 void __RPC_USER CLEANLOCALSTORAGE_UserFree (ULONG *, CLEANLOCALSTORAGE *); 6401 6402 /* End additional prototypes */ 6403 6404 #ifdef __cplusplus 6405 } 6406 #endif 6407 6408 #endif /* __oaidl_h__ */ 6409