1 /*** Autogenerated by WIDL 1.6 from include/objidlbase.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 __objidlbase_h__ 16 #define __objidlbase_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __IMarshal_FWD_DEFINED__ 21 #define __IMarshal_FWD_DEFINED__ 22 typedef interface IMarshal IMarshal; 23 #endif 24 25 #ifndef __INoMarshal_FWD_DEFINED__ 26 #define __INoMarshal_FWD_DEFINED__ 27 typedef interface INoMarshal INoMarshal; 28 #endif 29 30 #ifndef __IAgileObject_FWD_DEFINED__ 31 #define __IAgileObject_FWD_DEFINED__ 32 typedef interface IAgileObject IAgileObject; 33 #endif 34 35 #ifndef __IAgileReference_FWD_DEFINED__ 36 #define __IAgileReference_FWD_DEFINED__ 37 typedef interface IAgileReference IAgileReference; 38 #endif 39 40 #ifndef __IMarshal2_FWD_DEFINED__ 41 #define __IMarshal2_FWD_DEFINED__ 42 typedef interface IMarshal2 IMarshal2; 43 #endif 44 45 #ifndef __IMalloc_FWD_DEFINED__ 46 #define __IMalloc_FWD_DEFINED__ 47 typedef interface IMalloc IMalloc; 48 #endif 49 50 #ifndef __IStdMarshalInfo_FWD_DEFINED__ 51 #define __IStdMarshalInfo_FWD_DEFINED__ 52 typedef interface IStdMarshalInfo IStdMarshalInfo; 53 #endif 54 55 #ifndef __IExternalConnection_FWD_DEFINED__ 56 #define __IExternalConnection_FWD_DEFINED__ 57 typedef interface IExternalConnection IExternalConnection; 58 #endif 59 60 #ifndef __IMultiQI_FWD_DEFINED__ 61 #define __IMultiQI_FWD_DEFINED__ 62 typedef interface IMultiQI IMultiQI; 63 #endif 64 65 #ifndef __AsyncIMultiQI_FWD_DEFINED__ 66 #define __AsyncIMultiQI_FWD_DEFINED__ 67 typedef interface AsyncIMultiQI AsyncIMultiQI; 68 #endif 69 70 #ifndef __IInternalUnknown_FWD_DEFINED__ 71 #define __IInternalUnknown_FWD_DEFINED__ 72 typedef interface IInternalUnknown IInternalUnknown; 73 #endif 74 75 #ifndef __IEnumUnknown_FWD_DEFINED__ 76 #define __IEnumUnknown_FWD_DEFINED__ 77 typedef interface IEnumUnknown IEnumUnknown; 78 #endif 79 80 #ifndef __IEnumString_FWD_DEFINED__ 81 #define __IEnumString_FWD_DEFINED__ 82 typedef interface IEnumString IEnumString; 83 #endif 84 85 #ifndef __ISequentialStream_FWD_DEFINED__ 86 #define __ISequentialStream_FWD_DEFINED__ 87 typedef interface ISequentialStream ISequentialStream; 88 #endif 89 90 #ifndef __IStream_FWD_DEFINED__ 91 #define __IStream_FWD_DEFINED__ 92 typedef interface IStream IStream; 93 #endif 94 95 #ifndef __IRpcChannelBuffer_FWD_DEFINED__ 96 #define __IRpcChannelBuffer_FWD_DEFINED__ 97 typedef interface IRpcChannelBuffer IRpcChannelBuffer; 98 #endif 99 100 #ifndef __IRpcChannelBuffer2_FWD_DEFINED__ 101 #define __IRpcChannelBuffer2_FWD_DEFINED__ 102 typedef interface IRpcChannelBuffer2 IRpcChannelBuffer2; 103 #endif 104 105 #ifndef __IAsyncRpcChannelBuffer_FWD_DEFINED__ 106 #define __IAsyncRpcChannelBuffer_FWD_DEFINED__ 107 typedef interface IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer; 108 #endif 109 110 #ifndef __IRpcChannelBuffer3_FWD_DEFINED__ 111 #define __IRpcChannelBuffer3_FWD_DEFINED__ 112 typedef interface IRpcChannelBuffer3 IRpcChannelBuffer3; 113 #endif 114 115 #ifndef __IRpcSyntaxNegotiate_FWD_DEFINED__ 116 #define __IRpcSyntaxNegotiate_FWD_DEFINED__ 117 typedef interface IRpcSyntaxNegotiate IRpcSyntaxNegotiate; 118 #endif 119 120 #ifndef __IRpcProxyBuffer_FWD_DEFINED__ 121 #define __IRpcProxyBuffer_FWD_DEFINED__ 122 typedef interface IRpcProxyBuffer IRpcProxyBuffer; 123 #endif 124 125 #ifndef __IRpcStubBuffer_FWD_DEFINED__ 126 #define __IRpcStubBuffer_FWD_DEFINED__ 127 typedef interface IRpcStubBuffer IRpcStubBuffer; 128 #endif 129 130 #ifndef __IPSFactoryBuffer_FWD_DEFINED__ 131 #define __IPSFactoryBuffer_FWD_DEFINED__ 132 typedef interface IPSFactoryBuffer IPSFactoryBuffer; 133 #endif 134 135 #ifndef __IChannelHook_FWD_DEFINED__ 136 #define __IChannelHook_FWD_DEFINED__ 137 typedef interface IChannelHook IChannelHook; 138 #endif 139 140 #ifndef __IClientSecurity_FWD_DEFINED__ 141 #define __IClientSecurity_FWD_DEFINED__ 142 typedef interface IClientSecurity IClientSecurity; 143 #endif 144 145 #ifndef __IServerSecurity_FWD_DEFINED__ 146 #define __IServerSecurity_FWD_DEFINED__ 147 typedef interface IServerSecurity IServerSecurity; 148 #endif 149 150 #ifndef __IRpcOptions_FWD_DEFINED__ 151 #define __IRpcOptions_FWD_DEFINED__ 152 typedef interface IRpcOptions IRpcOptions; 153 #endif 154 155 #ifndef __IGlobalOptions_FWD_DEFINED__ 156 #define __IGlobalOptions_FWD_DEFINED__ 157 typedef interface IGlobalOptions IGlobalOptions; 158 #endif 159 160 #ifndef __ISurrogate_FWD_DEFINED__ 161 #define __ISurrogate_FWD_DEFINED__ 162 typedef interface ISurrogate ISurrogate; 163 #endif 164 165 #ifndef __IGlobalInterfaceTable_FWD_DEFINED__ 166 #define __IGlobalInterfaceTable_FWD_DEFINED__ 167 typedef interface IGlobalInterfaceTable IGlobalInterfaceTable; 168 #endif 169 170 #ifndef __ISynchronize_FWD_DEFINED__ 171 #define __ISynchronize_FWD_DEFINED__ 172 typedef interface ISynchronize ISynchronize; 173 #endif 174 175 #ifndef __ISynchronizeHandle_FWD_DEFINED__ 176 #define __ISynchronizeHandle_FWD_DEFINED__ 177 typedef interface ISynchronizeHandle ISynchronizeHandle; 178 #endif 179 180 #ifndef __ISynchronizeEvent_FWD_DEFINED__ 181 #define __ISynchronizeEvent_FWD_DEFINED__ 182 typedef interface ISynchronizeEvent ISynchronizeEvent; 183 #endif 184 185 #ifndef __ISynchronizeContainer_FWD_DEFINED__ 186 #define __ISynchronizeContainer_FWD_DEFINED__ 187 typedef interface ISynchronizeContainer ISynchronizeContainer; 188 #endif 189 190 #ifndef __ISynchronizeMutex_FWD_DEFINED__ 191 #define __ISynchronizeMutex_FWD_DEFINED__ 192 typedef interface ISynchronizeMutex ISynchronizeMutex; 193 #endif 194 195 #ifndef __ICancelMethodCalls_FWD_DEFINED__ 196 #define __ICancelMethodCalls_FWD_DEFINED__ 197 typedef interface ICancelMethodCalls ICancelMethodCalls; 198 #endif 199 200 #ifndef __IAsyncManager_FWD_DEFINED__ 201 #define __IAsyncManager_FWD_DEFINED__ 202 typedef interface IAsyncManager IAsyncManager; 203 #endif 204 205 #ifndef __ICallFactory_FWD_DEFINED__ 206 #define __ICallFactory_FWD_DEFINED__ 207 typedef interface ICallFactory ICallFactory; 208 #endif 209 210 #ifndef __IRpcHelper_FWD_DEFINED__ 211 #define __IRpcHelper_FWD_DEFINED__ 212 typedef interface IRpcHelper IRpcHelper; 213 #endif 214 215 #ifndef __IReleaseMarshalBuffers_FWD_DEFINED__ 216 #define __IReleaseMarshalBuffers_FWD_DEFINED__ 217 typedef interface IReleaseMarshalBuffers IReleaseMarshalBuffers; 218 #endif 219 220 #ifndef __IWaitMultiple_FWD_DEFINED__ 221 #define __IWaitMultiple_FWD_DEFINED__ 222 typedef interface IWaitMultiple IWaitMultiple; 223 #endif 224 225 #ifndef __IAddrTrackingControl_FWD_DEFINED__ 226 #define __IAddrTrackingControl_FWD_DEFINED__ 227 typedef interface IAddrTrackingControl IAddrTrackingControl; 228 #endif 229 230 #ifndef __IAddrExclusionControl_FWD_DEFINED__ 231 #define __IAddrExclusionControl_FWD_DEFINED__ 232 typedef interface IAddrExclusionControl IAddrExclusionControl; 233 #endif 234 235 #ifndef __IPipeByte_FWD_DEFINED__ 236 #define __IPipeByte_FWD_DEFINED__ 237 typedef interface IPipeByte IPipeByte; 238 #endif 239 240 #ifndef __IPipeLong_FWD_DEFINED__ 241 #define __IPipeLong_FWD_DEFINED__ 242 typedef interface IPipeLong IPipeLong; 243 #endif 244 245 #ifndef __IPipeDouble_FWD_DEFINED__ 246 #define __IPipeDouble_FWD_DEFINED__ 247 typedef interface IPipeDouble IPipeDouble; 248 #endif 249 250 #ifndef __IEnumContextProps_FWD_DEFINED__ 251 #define __IEnumContextProps_FWD_DEFINED__ 252 typedef interface IEnumContextProps IEnumContextProps; 253 #endif 254 255 #ifndef __IContext_FWD_DEFINED__ 256 #define __IContext_FWD_DEFINED__ 257 typedef interface IContext IContext; 258 #endif 259 260 #ifndef __IComThreadingInfo_FWD_DEFINED__ 261 #define __IComThreadingInfo_FWD_DEFINED__ 262 typedef interface IComThreadingInfo IComThreadingInfo; 263 #endif 264 265 #ifndef __IProcessInitControl_FWD_DEFINED__ 266 #define __IProcessInitControl_FWD_DEFINED__ 267 typedef interface IProcessInitControl IProcessInitControl; 268 #endif 269 270 #ifndef __IFastRundown_FWD_DEFINED__ 271 #define __IFastRundown_FWD_DEFINED__ 272 typedef interface IFastRundown IFastRundown; 273 #endif 274 275 #ifndef __IMarshalingStream_FWD_DEFINED__ 276 #define __IMarshalingStream_FWD_DEFINED__ 277 typedef interface IMarshalingStream IMarshalingStream; 278 #endif 279 280 /* Headers for imported files */ 281 282 #include <unknwnbase.h> 283 #include <wtypesbase.h> 284 285 #ifdef __cplusplus 286 extern "C" { 287 #endif 288 289 /** 290 * This file is part of the mingw-w64 runtime package. 291 * No warranty is given; refer to the file DISCLAIMER within this package. 292 */ 293 294 #include <winapifamily.h> 295 296 #if (NTDDI_VERSION >= NTDDI_VISTA && !defined(_WIN32_WINNT)) 297 #define _WIN32_WINNT 0x0600 298 #endif 299 300 #if (NTDDI_VERSION >= NTDDI_WS03 && !defined(_WIN32_WINNT)) 301 #define _WIN32_WINNT 0x0502 302 #endif 303 304 #if (NTDDI_VERSION >= NTDDI_WINXP && !defined(_WIN32_WINNT)) 305 #define _WIN32_WINNT 0x0501 306 #endif 307 308 309 #ifndef _OBJIDLBASE_ 310 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 311 #ifndef __IStream_FWD_DEFINED__ 312 #define __IStream_FWD_DEFINED__ 313 typedef interface IStream IStream; 314 #endif 315 316 #ifndef __IEnumString_FWD_DEFINED__ 317 #define __IEnumString_FWD_DEFINED__ 318 typedef interface IEnumString IEnumString; 319 #endif 320 321 #ifndef __IMultiQI_FWD_DEFINED__ 322 #define __IMultiQI_FWD_DEFINED__ 323 typedef interface IMultiQI IMultiQI; 324 #endif 325 326 #ifndef __AsyncIMultiQI_FWD_DEFINED__ 327 #define __AsyncIMultiQI_FWD_DEFINED__ 328 typedef interface AsyncIMultiQI AsyncIMultiQI; 329 #endif 330 331 #endif 332 333 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 334 #ifndef __IAsyncManager_FWD_DEFINED__ 335 #define __IAsyncManager_FWD_DEFINED__ 336 typedef interface IAsyncManager IAsyncManager; 337 #endif 338 339 #ifndef __ICallFactory_FWD_DEFINED__ 340 #define __ICallFactory_FWD_DEFINED__ 341 typedef interface ICallFactory ICallFactory; 342 #endif 343 344 #ifndef __ISynchronize_FWD_DEFINED__ 345 #define __ISynchronize_FWD_DEFINED__ 346 typedef interface ISynchronize ISynchronize; 347 #endif 348 349 #endif 350 351 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 352 typedef struct _COSERVERINFO { 353 DWORD dwReserved1; 354 LPWSTR pwszName; 355 COAUTHINFO *pAuthInfo; 356 DWORD dwReserved2; 357 } COSERVERINFO; 358 359 /***************************************************************************** 360 * IMarshal interface 361 */ 362 #ifndef __IMarshal_INTERFACE_DEFINED__ 363 #define __IMarshal_INTERFACE_DEFINED__ 364 365 typedef IMarshal *LPMARSHAL; 366 DEFINE_GUID(IID_IMarshal, 0x00000003, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 367 #if defined(__cplusplus) && !defined(CINTERFACE) 368 MIDL_INTERFACE("00000003-0000-0000-c000-000000000046") 369 IMarshal : public IUnknown 370 { 371 virtual HRESULT STDMETHODCALLTYPE GetUnmarshalClass( 372 REFIID riid, 373 void *pv, 374 DWORD dwDestContext, 375 void *pvDestContext, 376 DWORD mshlflags, 377 CLSID *pCid) = 0; 378 379 virtual HRESULT STDMETHODCALLTYPE GetMarshalSizeMax( 380 REFIID riid, 381 void *pv, 382 DWORD dwDestContext, 383 void *pvDestContext, 384 DWORD mshlflags, 385 DWORD *pSize) = 0; 386 387 virtual HRESULT STDMETHODCALLTYPE MarshalInterface( 388 IStream *pStm, 389 REFIID riid, 390 void *pv, 391 DWORD dwDestContext, 392 void *pvDestContext, 393 DWORD mshlflags) = 0; 394 395 virtual HRESULT STDMETHODCALLTYPE UnmarshalInterface( 396 IStream *pStm, 397 REFIID riid, 398 void **ppv) = 0; 399 400 virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalData( 401 IStream *pStm) = 0; 402 403 virtual HRESULT STDMETHODCALLTYPE DisconnectObject( 404 DWORD dwReserved) = 0; 405 406 }; 407 #ifdef __CRT_UUID_DECL 408 __CRT_UUID_DECL(IMarshal, 0x00000003, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 409 #endif 410 #else 411 typedef struct IMarshalVtbl { 412 BEGIN_INTERFACE 413 414 /*** IUnknown methods ***/ 415 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 416 IMarshal* This, 417 REFIID riid, 418 void **ppvObject); 419 420 ULONG (STDMETHODCALLTYPE *AddRef)( 421 IMarshal* This); 422 423 ULONG (STDMETHODCALLTYPE *Release)( 424 IMarshal* This); 425 426 /*** IMarshal methods ***/ 427 HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)( 428 IMarshal* This, 429 REFIID riid, 430 void *pv, 431 DWORD dwDestContext, 432 void *pvDestContext, 433 DWORD mshlflags, 434 CLSID *pCid); 435 436 HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)( 437 IMarshal* This, 438 REFIID riid, 439 void *pv, 440 DWORD dwDestContext, 441 void *pvDestContext, 442 DWORD mshlflags, 443 DWORD *pSize); 444 445 HRESULT (STDMETHODCALLTYPE *MarshalInterface)( 446 IMarshal* This, 447 IStream *pStm, 448 REFIID riid, 449 void *pv, 450 DWORD dwDestContext, 451 void *pvDestContext, 452 DWORD mshlflags); 453 454 HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)( 455 IMarshal* This, 456 IStream *pStm, 457 REFIID riid, 458 void **ppv); 459 460 HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)( 461 IMarshal* This, 462 IStream *pStm); 463 464 HRESULT (STDMETHODCALLTYPE *DisconnectObject)( 465 IMarshal* This, 466 DWORD dwReserved); 467 468 END_INTERFACE 469 } IMarshalVtbl; 470 interface IMarshal { 471 CONST_VTBL IMarshalVtbl* lpVtbl; 472 }; 473 474 #ifdef COBJMACROS 475 #ifndef WIDL_C_INLINE_WRAPPERS 476 /*** IUnknown methods ***/ 477 #define IMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 478 #define IMarshal_AddRef(This) (This)->lpVtbl->AddRef(This) 479 #define IMarshal_Release(This) (This)->lpVtbl->Release(This) 480 /*** IMarshal methods ***/ 481 #define IMarshal_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) (This)->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) 482 #define IMarshal_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) (This)->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) 483 #define IMarshal_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) (This)->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) 484 #define IMarshal_UnmarshalInterface(This,pStm,riid,ppv) (This)->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv) 485 #define IMarshal_ReleaseMarshalData(This,pStm) (This)->lpVtbl->ReleaseMarshalData(This,pStm) 486 #define IMarshal_DisconnectObject(This,dwReserved) (This)->lpVtbl->DisconnectObject(This,dwReserved) 487 #else 488 /*** IUnknown methods ***/ 489 static FORCEINLINE HRESULT IMarshal_QueryInterface(IMarshal* This,REFIID riid,void **ppvObject) { 490 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 491 } 492 static FORCEINLINE ULONG IMarshal_AddRef(IMarshal* This) { 493 return This->lpVtbl->AddRef(This); 494 } 495 static FORCEINLINE ULONG IMarshal_Release(IMarshal* This) { 496 return This->lpVtbl->Release(This); 497 } 498 /*** IMarshal methods ***/ 499 static FORCEINLINE HRESULT IMarshal_GetUnmarshalClass(IMarshal* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,CLSID *pCid) { 500 return This->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid); 501 } 502 static FORCEINLINE HRESULT IMarshal_GetMarshalSizeMax(IMarshal* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,DWORD *pSize) { 503 return This->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize); 504 } 505 static FORCEINLINE HRESULT IMarshal_MarshalInterface(IMarshal* This,IStream *pStm,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags) { 506 return This->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags); 507 } 508 static FORCEINLINE HRESULT IMarshal_UnmarshalInterface(IMarshal* This,IStream *pStm,REFIID riid,void **ppv) { 509 return This->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv); 510 } 511 static FORCEINLINE HRESULT IMarshal_ReleaseMarshalData(IMarshal* This,IStream *pStm) { 512 return This->lpVtbl->ReleaseMarshalData(This,pStm); 513 } 514 static FORCEINLINE HRESULT IMarshal_DisconnectObject(IMarshal* This,DWORD dwReserved) { 515 return This->lpVtbl->DisconnectObject(This,dwReserved); 516 } 517 #endif 518 #endif 519 520 #endif 521 522 HRESULT STDMETHODCALLTYPE IMarshal_GetUnmarshalClass_Proxy( 523 IMarshal* This, 524 REFIID riid, 525 void *pv, 526 DWORD dwDestContext, 527 void *pvDestContext, 528 DWORD mshlflags, 529 CLSID *pCid); 530 void __RPC_STUB IMarshal_GetUnmarshalClass_Stub( 531 IRpcStubBuffer* This, 532 IRpcChannelBuffer* pRpcChannelBuffer, 533 PRPC_MESSAGE pRpcMessage, 534 DWORD* pdwStubPhase); 535 HRESULT STDMETHODCALLTYPE IMarshal_GetMarshalSizeMax_Proxy( 536 IMarshal* This, 537 REFIID riid, 538 void *pv, 539 DWORD dwDestContext, 540 void *pvDestContext, 541 DWORD mshlflags, 542 DWORD *pSize); 543 void __RPC_STUB IMarshal_GetMarshalSizeMax_Stub( 544 IRpcStubBuffer* This, 545 IRpcChannelBuffer* pRpcChannelBuffer, 546 PRPC_MESSAGE pRpcMessage, 547 DWORD* pdwStubPhase); 548 HRESULT STDMETHODCALLTYPE IMarshal_MarshalInterface_Proxy( 549 IMarshal* This, 550 IStream *pStm, 551 REFIID riid, 552 void *pv, 553 DWORD dwDestContext, 554 void *pvDestContext, 555 DWORD mshlflags); 556 void __RPC_STUB IMarshal_MarshalInterface_Stub( 557 IRpcStubBuffer* This, 558 IRpcChannelBuffer* pRpcChannelBuffer, 559 PRPC_MESSAGE pRpcMessage, 560 DWORD* pdwStubPhase); 561 HRESULT STDMETHODCALLTYPE IMarshal_UnmarshalInterface_Proxy( 562 IMarshal* This, 563 IStream *pStm, 564 REFIID riid, 565 void **ppv); 566 void __RPC_STUB IMarshal_UnmarshalInterface_Stub( 567 IRpcStubBuffer* This, 568 IRpcChannelBuffer* pRpcChannelBuffer, 569 PRPC_MESSAGE pRpcMessage, 570 DWORD* pdwStubPhase); 571 HRESULT STDMETHODCALLTYPE IMarshal_ReleaseMarshalData_Proxy( 572 IMarshal* This, 573 IStream *pStm); 574 void __RPC_STUB IMarshal_ReleaseMarshalData_Stub( 575 IRpcStubBuffer* This, 576 IRpcChannelBuffer* pRpcChannelBuffer, 577 PRPC_MESSAGE pRpcMessage, 578 DWORD* pdwStubPhase); 579 HRESULT STDMETHODCALLTYPE IMarshal_DisconnectObject_Proxy( 580 IMarshal* This, 581 DWORD dwReserved); 582 void __RPC_STUB IMarshal_DisconnectObject_Stub( 583 IRpcStubBuffer* This, 584 IRpcChannelBuffer* pRpcChannelBuffer, 585 PRPC_MESSAGE pRpcMessage, 586 DWORD* pdwStubPhase); 587 588 #endif /* __IMarshal_INTERFACE_DEFINED__ */ 589 590 591 /***************************************************************************** 592 * INoMarshal interface 593 */ 594 #ifndef __INoMarshal_INTERFACE_DEFINED__ 595 #define __INoMarshal_INTERFACE_DEFINED__ 596 597 DEFINE_GUID(IID_INoMarshal, 0xecc8691b, 0xc1db, 0x4dc0, 0x85,0x5e, 0x65,0xf6,0xc5,0x51,0xaf,0x49); 598 #if defined(__cplusplus) && !defined(CINTERFACE) 599 MIDL_INTERFACE("ecc8691b-c1db-4dc0-855e-65f6c551af49") 600 INoMarshal : public IUnknown 601 { 602 }; 603 #ifdef __CRT_UUID_DECL 604 __CRT_UUID_DECL(INoMarshal, 0xecc8691b, 0xc1db, 0x4dc0, 0x85,0x5e, 0x65,0xf6,0xc5,0x51,0xaf,0x49) 605 #endif 606 #else 607 typedef struct INoMarshalVtbl { 608 BEGIN_INTERFACE 609 610 /*** IUnknown methods ***/ 611 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 612 INoMarshal* This, 613 REFIID riid, 614 void **ppvObject); 615 616 ULONG (STDMETHODCALLTYPE *AddRef)( 617 INoMarshal* This); 618 619 ULONG (STDMETHODCALLTYPE *Release)( 620 INoMarshal* This); 621 622 END_INTERFACE 623 } INoMarshalVtbl; 624 interface INoMarshal { 625 CONST_VTBL INoMarshalVtbl* lpVtbl; 626 }; 627 628 #ifdef COBJMACROS 629 #ifndef WIDL_C_INLINE_WRAPPERS 630 /*** IUnknown methods ***/ 631 #define INoMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 632 #define INoMarshal_AddRef(This) (This)->lpVtbl->AddRef(This) 633 #define INoMarshal_Release(This) (This)->lpVtbl->Release(This) 634 #else 635 /*** IUnknown methods ***/ 636 static FORCEINLINE HRESULT INoMarshal_QueryInterface(INoMarshal* This,REFIID riid,void **ppvObject) { 637 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 638 } 639 static FORCEINLINE ULONG INoMarshal_AddRef(INoMarshal* This) { 640 return This->lpVtbl->AddRef(This); 641 } 642 static FORCEINLINE ULONG INoMarshal_Release(INoMarshal* This) { 643 return This->lpVtbl->Release(This); 644 } 645 #endif 646 #endif 647 648 #endif 649 650 651 #endif /* __INoMarshal_INTERFACE_DEFINED__ */ 652 653 654 /***************************************************************************** 655 * IAgileObject interface 656 */ 657 #ifndef __IAgileObject_INTERFACE_DEFINED__ 658 #define __IAgileObject_INTERFACE_DEFINED__ 659 660 DEFINE_GUID(IID_IAgileObject, 0x94ea2b94, 0xe9cc, 0x49e0, 0xc0,0xff, 0xee,0x64,0xca,0x8f,0x5b,0x90); 661 #if defined(__cplusplus) && !defined(CINTERFACE) 662 MIDL_INTERFACE("94ea2b94-e9cc-49e0-c0ff-ee64ca8f5b90") 663 IAgileObject : public IUnknown 664 { 665 }; 666 #ifdef __CRT_UUID_DECL 667 __CRT_UUID_DECL(IAgileObject, 0x94ea2b94, 0xe9cc, 0x49e0, 0xc0,0xff, 0xee,0x64,0xca,0x8f,0x5b,0x90) 668 #endif 669 #else 670 typedef struct IAgileObjectVtbl { 671 BEGIN_INTERFACE 672 673 /*** IUnknown methods ***/ 674 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 675 IAgileObject* This, 676 REFIID riid, 677 void **ppvObject); 678 679 ULONG (STDMETHODCALLTYPE *AddRef)( 680 IAgileObject* This); 681 682 ULONG (STDMETHODCALLTYPE *Release)( 683 IAgileObject* This); 684 685 END_INTERFACE 686 } IAgileObjectVtbl; 687 interface IAgileObject { 688 CONST_VTBL IAgileObjectVtbl* lpVtbl; 689 }; 690 691 #ifdef COBJMACROS 692 #ifndef WIDL_C_INLINE_WRAPPERS 693 /*** IUnknown methods ***/ 694 #define IAgileObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 695 #define IAgileObject_AddRef(This) (This)->lpVtbl->AddRef(This) 696 #define IAgileObject_Release(This) (This)->lpVtbl->Release(This) 697 #else 698 /*** IUnknown methods ***/ 699 static FORCEINLINE HRESULT IAgileObject_QueryInterface(IAgileObject* This,REFIID riid,void **ppvObject) { 700 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 701 } 702 static FORCEINLINE ULONG IAgileObject_AddRef(IAgileObject* This) { 703 return This->lpVtbl->AddRef(This); 704 } 705 static FORCEINLINE ULONG IAgileObject_Release(IAgileObject* This) { 706 return This->lpVtbl->Release(This); 707 } 708 #endif 709 #endif 710 711 #endif 712 713 714 #endif /* __IAgileObject_INTERFACE_DEFINED__ */ 715 716 /***************************************************************************** 717 * IAgileReference interface 718 */ 719 #ifndef __IAgileReference_INTERFACE_DEFINED__ 720 #define __IAgileReference_INTERFACE_DEFINED__ 721 722 DEFINE_GUID(IID_IAgileReference, 0xc03f6a43, 0x65a4, 0x9818, 0x98,0x7e, 0xe0,0xb8,0x10,0xd2,0xa6,0xf2); 723 #if defined(__cplusplus) && !defined(CINTERFACE) 724 MIDL_INTERFACE("c03f6a43-65a4-9818-987e-e0b810d2a6f2") 725 IAgileReference : public IUnknown 726 { 727 virtual HRESULT STDMETHODCALLTYPE Resolve( 728 REFIID riid, 729 void **ppv) = 0; 730 731 }; 732 #ifdef __CRT_UUID_DECL 733 __CRT_UUID_DECL(IAgileReference, 0xc03f6a43, 0x65a4, 0x9818, 0x98,0x7e, 0xe0,0xb8,0x10,0xd2,0xa6,0xf2) 734 #endif 735 #else 736 typedef struct IAgileReferenceVtbl { 737 BEGIN_INTERFACE 738 739 /*** IUnknown methods ***/ 740 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 741 IAgileReference* This, 742 REFIID riid, 743 void **ppvObject); 744 745 ULONG (STDMETHODCALLTYPE *AddRef)( 746 IAgileReference* This); 747 748 ULONG (STDMETHODCALLTYPE *Release)( 749 IAgileReference* This); 750 751 /*** IAgileReference methods ***/ 752 HRESULT (STDMETHODCALLTYPE *Resolve)( 753 IAgileReference* This, 754 REFIID riid, 755 void **ppv); 756 757 END_INTERFACE 758 } IAgileReferenceVtbl; 759 interface IAgileReference { 760 CONST_VTBL IAgileReferenceVtbl* lpVtbl; 761 }; 762 763 #ifdef COBJMACROS 764 #ifndef WIDL_C_INLINE_WRAPPERS 765 /*** IUnknown methods ***/ 766 #define IAgileReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 767 #define IAgileReference_AddRef(This) (This)->lpVtbl->AddRef(This) 768 #define IAgileReference_Release(This) (This)->lpVtbl->Release(This) 769 /*** IAgileReference methods ***/ 770 #define IAgileReference_Resolve(This,riid,ppv) (This)->lpVtbl->Resolve(This,riid,ppv) 771 #else 772 /*** IUnknown methods ***/ 773 static FORCEINLINE HRESULT IAgileReference_QueryInterface(IAgileReference* This,REFIID riid,void **ppvObject) { 774 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 775 } 776 static FORCEINLINE ULONG IAgileReference_AddRef(IAgileReference* This) { 777 return This->lpVtbl->AddRef(This); 778 } 779 static FORCEINLINE ULONG IAgileReference_Release(IAgileReference* This) { 780 return This->lpVtbl->Release(This); 781 } 782 /*** IAgileReference methods ***/ 783 static FORCEINLINE HRESULT IAgileReference_Resolve(IAgileReference* This,REFIID riid,void **ppv) { 784 return This->lpVtbl->Resolve(This,riid,ppv); 785 } 786 #endif 787 #endif 788 789 #endif 790 791 HRESULT STDMETHODCALLTYPE IAgileReference_Resolve_Proxy( 792 IAgileReference* This, 793 REFIID riid, 794 void **ppv); 795 void __RPC_STUB IAgileReference_Resolve_Stub( 796 IRpcStubBuffer* This, 797 IRpcChannelBuffer* pRpcChannelBuffer, 798 PRPC_MESSAGE pRpcMessage, 799 DWORD* pdwStubPhase); 800 801 #endif /* __IAgileReference_INTERFACE_DEFINED__ */ 802 803 #endif 804 805 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 806 /***************************************************************************** 807 * IMarshal2 interface 808 */ 809 #ifndef __IMarshal2_INTERFACE_DEFINED__ 810 #define __IMarshal2_INTERFACE_DEFINED__ 811 812 typedef IMarshal2 *LPMARSHAL2; 813 DEFINE_GUID(IID_IMarshal2, 0x000001cf, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 814 #if defined(__cplusplus) && !defined(CINTERFACE) 815 MIDL_INTERFACE("000001cf-0000-0000-c000-000000000046") 816 IMarshal2 : public IMarshal 817 { 818 }; 819 #ifdef __CRT_UUID_DECL 820 __CRT_UUID_DECL(IMarshal2, 0x000001cf, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 821 #endif 822 #else 823 typedef struct IMarshal2Vtbl { 824 BEGIN_INTERFACE 825 826 /*** IUnknown methods ***/ 827 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 828 IMarshal2* This, 829 REFIID riid, 830 void **ppvObject); 831 832 ULONG (STDMETHODCALLTYPE *AddRef)( 833 IMarshal2* This); 834 835 ULONG (STDMETHODCALLTYPE *Release)( 836 IMarshal2* This); 837 838 /*** IMarshal methods ***/ 839 HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)( 840 IMarshal2* This, 841 REFIID riid, 842 void *pv, 843 DWORD dwDestContext, 844 void *pvDestContext, 845 DWORD mshlflags, 846 CLSID *pCid); 847 848 HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)( 849 IMarshal2* This, 850 REFIID riid, 851 void *pv, 852 DWORD dwDestContext, 853 void *pvDestContext, 854 DWORD mshlflags, 855 DWORD *pSize); 856 857 HRESULT (STDMETHODCALLTYPE *MarshalInterface)( 858 IMarshal2* This, 859 IStream *pStm, 860 REFIID riid, 861 void *pv, 862 DWORD dwDestContext, 863 void *pvDestContext, 864 DWORD mshlflags); 865 866 HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)( 867 IMarshal2* This, 868 IStream *pStm, 869 REFIID riid, 870 void **ppv); 871 872 HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)( 873 IMarshal2* This, 874 IStream *pStm); 875 876 HRESULT (STDMETHODCALLTYPE *DisconnectObject)( 877 IMarshal2* This, 878 DWORD dwReserved); 879 880 END_INTERFACE 881 } IMarshal2Vtbl; 882 interface IMarshal2 { 883 CONST_VTBL IMarshal2Vtbl* lpVtbl; 884 }; 885 886 #ifdef COBJMACROS 887 #ifndef WIDL_C_INLINE_WRAPPERS 888 /*** IUnknown methods ***/ 889 #define IMarshal2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 890 #define IMarshal2_AddRef(This) (This)->lpVtbl->AddRef(This) 891 #define IMarshal2_Release(This) (This)->lpVtbl->Release(This) 892 /*** IMarshal methods ***/ 893 #define IMarshal2_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) (This)->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) 894 #define IMarshal2_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) (This)->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) 895 #define IMarshal2_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) (This)->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) 896 #define IMarshal2_UnmarshalInterface(This,pStm,riid,ppv) (This)->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv) 897 #define IMarshal2_ReleaseMarshalData(This,pStm) (This)->lpVtbl->ReleaseMarshalData(This,pStm) 898 #define IMarshal2_DisconnectObject(This,dwReserved) (This)->lpVtbl->DisconnectObject(This,dwReserved) 899 #else 900 /*** IUnknown methods ***/ 901 static FORCEINLINE HRESULT IMarshal2_QueryInterface(IMarshal2* This,REFIID riid,void **ppvObject) { 902 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 903 } 904 static FORCEINLINE ULONG IMarshal2_AddRef(IMarshal2* This) { 905 return This->lpVtbl->AddRef(This); 906 } 907 static FORCEINLINE ULONG IMarshal2_Release(IMarshal2* This) { 908 return This->lpVtbl->Release(This); 909 } 910 /*** IMarshal methods ***/ 911 static FORCEINLINE HRESULT IMarshal2_GetUnmarshalClass(IMarshal2* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,CLSID *pCid) { 912 return This->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid); 913 } 914 static FORCEINLINE HRESULT IMarshal2_GetMarshalSizeMax(IMarshal2* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,DWORD *pSize) { 915 return This->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize); 916 } 917 static FORCEINLINE HRESULT IMarshal2_MarshalInterface(IMarshal2* This,IStream *pStm,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags) { 918 return This->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags); 919 } 920 static FORCEINLINE HRESULT IMarshal2_UnmarshalInterface(IMarshal2* This,IStream *pStm,REFIID riid,void **ppv) { 921 return This->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv); 922 } 923 static FORCEINLINE HRESULT IMarshal2_ReleaseMarshalData(IMarshal2* This,IStream *pStm) { 924 return This->lpVtbl->ReleaseMarshalData(This,pStm); 925 } 926 static FORCEINLINE HRESULT IMarshal2_DisconnectObject(IMarshal2* This,DWORD dwReserved) { 927 return This->lpVtbl->DisconnectObject(This,dwReserved); 928 } 929 #endif 930 #endif 931 932 #endif 933 934 935 #endif /* __IMarshal2_INTERFACE_DEFINED__ */ 936 937 938 /***************************************************************************** 939 * IMalloc interface 940 */ 941 #ifndef __IMalloc_INTERFACE_DEFINED__ 942 #define __IMalloc_INTERFACE_DEFINED__ 943 944 typedef IMalloc *LPMALLOC; 945 946 DEFINE_GUID(IID_IMalloc, 0x00000002, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 947 #if defined(__cplusplus) && !defined(CINTERFACE) 948 MIDL_INTERFACE("00000002-0000-0000-c000-000000000046") 949 IMalloc : public IUnknown 950 { 951 virtual void * STDMETHODCALLTYPE Alloc( 952 SIZE_T cb) = 0; 953 954 virtual void * STDMETHODCALLTYPE Realloc( 955 void *pv, 956 SIZE_T cb) = 0; 957 958 virtual void STDMETHODCALLTYPE Free( 959 void *pv) = 0; 960 961 virtual SIZE_T STDMETHODCALLTYPE GetSize( 962 void *pv) = 0; 963 964 virtual int STDMETHODCALLTYPE DidAlloc( 965 void *pv) = 0; 966 967 virtual void STDMETHODCALLTYPE HeapMinimize( 968 ) = 0; 969 970 }; 971 #ifdef __CRT_UUID_DECL 972 __CRT_UUID_DECL(IMalloc, 0x00000002, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 973 #endif 974 #else 975 typedef struct IMallocVtbl { 976 BEGIN_INTERFACE 977 978 /*** IUnknown methods ***/ 979 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 980 IMalloc* This, 981 REFIID riid, 982 void **ppvObject); 983 984 ULONG (STDMETHODCALLTYPE *AddRef)( 985 IMalloc* This); 986 987 ULONG (STDMETHODCALLTYPE *Release)( 988 IMalloc* This); 989 990 /*** IMalloc methods ***/ 991 void * (STDMETHODCALLTYPE *Alloc)( 992 IMalloc* This, 993 SIZE_T cb); 994 995 void * (STDMETHODCALLTYPE *Realloc)( 996 IMalloc* This, 997 void *pv, 998 SIZE_T cb); 999 1000 void (STDMETHODCALLTYPE *Free)( 1001 IMalloc* This, 1002 void *pv); 1003 1004 SIZE_T (STDMETHODCALLTYPE *GetSize)( 1005 IMalloc* This, 1006 void *pv); 1007 1008 int (STDMETHODCALLTYPE *DidAlloc)( 1009 IMalloc* This, 1010 void *pv); 1011 1012 void (STDMETHODCALLTYPE *HeapMinimize)( 1013 IMalloc* This); 1014 1015 END_INTERFACE 1016 } IMallocVtbl; 1017 interface IMalloc { 1018 CONST_VTBL IMallocVtbl* lpVtbl; 1019 }; 1020 1021 #ifdef COBJMACROS 1022 #ifndef WIDL_C_INLINE_WRAPPERS 1023 /*** IUnknown methods ***/ 1024 #define IMalloc_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1025 #define IMalloc_AddRef(This) (This)->lpVtbl->AddRef(This) 1026 #define IMalloc_Release(This) (This)->lpVtbl->Release(This) 1027 /*** IMalloc methods ***/ 1028 #define IMalloc_Alloc(This,cb) (This)->lpVtbl->Alloc(This,cb) 1029 #define IMalloc_Realloc(This,pv,cb) (This)->lpVtbl->Realloc(This,pv,cb) 1030 #define IMalloc_Free(This,pv) (This)->lpVtbl->Free(This,pv) 1031 #define IMalloc_GetSize(This,pv) (This)->lpVtbl->GetSize(This,pv) 1032 #define IMalloc_DidAlloc(This,pv) (This)->lpVtbl->DidAlloc(This,pv) 1033 #define IMalloc_HeapMinimize(This) (This)->lpVtbl->HeapMinimize(This) 1034 #else 1035 /*** IUnknown methods ***/ 1036 static FORCEINLINE HRESULT IMalloc_QueryInterface(IMalloc* This,REFIID riid,void **ppvObject) { 1037 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1038 } 1039 static FORCEINLINE ULONG IMalloc_AddRef(IMalloc* This) { 1040 return This->lpVtbl->AddRef(This); 1041 } 1042 static FORCEINLINE ULONG IMalloc_Release(IMalloc* This) { 1043 return This->lpVtbl->Release(This); 1044 } 1045 /*** IMalloc methods ***/ 1046 static FORCEINLINE void * IMalloc_Alloc(IMalloc* This,SIZE_T cb) { 1047 return This->lpVtbl->Alloc(This,cb); 1048 } 1049 static FORCEINLINE void * IMalloc_Realloc(IMalloc* This,void *pv,SIZE_T cb) { 1050 return This->lpVtbl->Realloc(This,pv,cb); 1051 } 1052 static FORCEINLINE void IMalloc_Free(IMalloc* This,void *pv) { 1053 This->lpVtbl->Free(This,pv); 1054 } 1055 static FORCEINLINE SIZE_T IMalloc_GetSize(IMalloc* This,void *pv) { 1056 return This->lpVtbl->GetSize(This,pv); 1057 } 1058 static FORCEINLINE int IMalloc_DidAlloc(IMalloc* This,void *pv) { 1059 return This->lpVtbl->DidAlloc(This,pv); 1060 } 1061 static FORCEINLINE void IMalloc_HeapMinimize(IMalloc* This) { 1062 This->lpVtbl->HeapMinimize(This); 1063 } 1064 #endif 1065 #endif 1066 1067 #endif 1068 1069 void * STDMETHODCALLTYPE IMalloc_Alloc_Proxy( 1070 IMalloc* This, 1071 SIZE_T cb); 1072 void __RPC_STUB IMalloc_Alloc_Stub( 1073 IRpcStubBuffer* This, 1074 IRpcChannelBuffer* pRpcChannelBuffer, 1075 PRPC_MESSAGE pRpcMessage, 1076 DWORD* pdwStubPhase); 1077 void * STDMETHODCALLTYPE IMalloc_Realloc_Proxy( 1078 IMalloc* This, 1079 void *pv, 1080 SIZE_T cb); 1081 void __RPC_STUB IMalloc_Realloc_Stub( 1082 IRpcStubBuffer* This, 1083 IRpcChannelBuffer* pRpcChannelBuffer, 1084 PRPC_MESSAGE pRpcMessage, 1085 DWORD* pdwStubPhase); 1086 void STDMETHODCALLTYPE IMalloc_Free_Proxy( 1087 IMalloc* This, 1088 void *pv); 1089 void __RPC_STUB IMalloc_Free_Stub( 1090 IRpcStubBuffer* This, 1091 IRpcChannelBuffer* pRpcChannelBuffer, 1092 PRPC_MESSAGE pRpcMessage, 1093 DWORD* pdwStubPhase); 1094 SIZE_T STDMETHODCALLTYPE IMalloc_GetSize_Proxy( 1095 IMalloc* This, 1096 void *pv); 1097 void __RPC_STUB IMalloc_GetSize_Stub( 1098 IRpcStubBuffer* This, 1099 IRpcChannelBuffer* pRpcChannelBuffer, 1100 PRPC_MESSAGE pRpcMessage, 1101 DWORD* pdwStubPhase); 1102 int STDMETHODCALLTYPE IMalloc_DidAlloc_Proxy( 1103 IMalloc* This, 1104 void *pv); 1105 void __RPC_STUB IMalloc_DidAlloc_Stub( 1106 IRpcStubBuffer* This, 1107 IRpcChannelBuffer* pRpcChannelBuffer, 1108 PRPC_MESSAGE pRpcMessage, 1109 DWORD* pdwStubPhase); 1110 void STDMETHODCALLTYPE IMalloc_HeapMinimize_Proxy( 1111 IMalloc* This); 1112 void __RPC_STUB IMalloc_HeapMinimize_Stub( 1113 IRpcStubBuffer* This, 1114 IRpcChannelBuffer* pRpcChannelBuffer, 1115 PRPC_MESSAGE pRpcMessage, 1116 DWORD* pdwStubPhase); 1117 1118 #endif /* __IMalloc_INTERFACE_DEFINED__ */ 1119 1120 1121 /***************************************************************************** 1122 * IStdMarshalInfo interface 1123 */ 1124 #ifndef __IStdMarshalInfo_INTERFACE_DEFINED__ 1125 #define __IStdMarshalInfo_INTERFACE_DEFINED__ 1126 1127 typedef IStdMarshalInfo *LPSTDMARSHALINFO; 1128 1129 DEFINE_GUID(IID_IStdMarshalInfo, 0x00000018, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1130 #if defined(__cplusplus) && !defined(CINTERFACE) 1131 MIDL_INTERFACE("00000018-0000-0000-c000-000000000046") 1132 IStdMarshalInfo : public IUnknown 1133 { 1134 virtual HRESULT STDMETHODCALLTYPE GetClassForHandler( 1135 DWORD dwDestContext, 1136 void *pvDestContext, 1137 CLSID *pClsid) = 0; 1138 1139 }; 1140 #ifdef __CRT_UUID_DECL 1141 __CRT_UUID_DECL(IStdMarshalInfo, 0x00000018, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1142 #endif 1143 #else 1144 typedef struct IStdMarshalInfoVtbl { 1145 BEGIN_INTERFACE 1146 1147 /*** IUnknown methods ***/ 1148 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1149 IStdMarshalInfo* This, 1150 REFIID riid, 1151 void **ppvObject); 1152 1153 ULONG (STDMETHODCALLTYPE *AddRef)( 1154 IStdMarshalInfo* This); 1155 1156 ULONG (STDMETHODCALLTYPE *Release)( 1157 IStdMarshalInfo* This); 1158 1159 /*** IStdMarshalInfo methods ***/ 1160 HRESULT (STDMETHODCALLTYPE *GetClassForHandler)( 1161 IStdMarshalInfo* This, 1162 DWORD dwDestContext, 1163 void *pvDestContext, 1164 CLSID *pClsid); 1165 1166 END_INTERFACE 1167 } IStdMarshalInfoVtbl; 1168 interface IStdMarshalInfo { 1169 CONST_VTBL IStdMarshalInfoVtbl* lpVtbl; 1170 }; 1171 1172 #ifdef COBJMACROS 1173 #ifndef WIDL_C_INLINE_WRAPPERS 1174 /*** IUnknown methods ***/ 1175 #define IStdMarshalInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1176 #define IStdMarshalInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 1177 #define IStdMarshalInfo_Release(This) (This)->lpVtbl->Release(This) 1178 /*** IStdMarshalInfo methods ***/ 1179 #define IStdMarshalInfo_GetClassForHandler(This,dwDestContext,pvDestContext,pClsid) (This)->lpVtbl->GetClassForHandler(This,dwDestContext,pvDestContext,pClsid) 1180 #else 1181 /*** IUnknown methods ***/ 1182 static FORCEINLINE HRESULT IStdMarshalInfo_QueryInterface(IStdMarshalInfo* This,REFIID riid,void **ppvObject) { 1183 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1184 } 1185 static FORCEINLINE ULONG IStdMarshalInfo_AddRef(IStdMarshalInfo* This) { 1186 return This->lpVtbl->AddRef(This); 1187 } 1188 static FORCEINLINE ULONG IStdMarshalInfo_Release(IStdMarshalInfo* This) { 1189 return This->lpVtbl->Release(This); 1190 } 1191 /*** IStdMarshalInfo methods ***/ 1192 static FORCEINLINE HRESULT IStdMarshalInfo_GetClassForHandler(IStdMarshalInfo* This,DWORD dwDestContext,void *pvDestContext,CLSID *pClsid) { 1193 return This->lpVtbl->GetClassForHandler(This,dwDestContext,pvDestContext,pClsid); 1194 } 1195 #endif 1196 #endif 1197 1198 #endif 1199 1200 HRESULT STDMETHODCALLTYPE IStdMarshalInfo_GetClassForHandler_Proxy( 1201 IStdMarshalInfo* This, 1202 DWORD dwDestContext, 1203 void *pvDestContext, 1204 CLSID *pClsid); 1205 void __RPC_STUB IStdMarshalInfo_GetClassForHandler_Stub( 1206 IRpcStubBuffer* This, 1207 IRpcChannelBuffer* pRpcChannelBuffer, 1208 PRPC_MESSAGE pRpcMessage, 1209 DWORD* pdwStubPhase); 1210 1211 #endif /* __IStdMarshalInfo_INTERFACE_DEFINED__ */ 1212 1213 1214 /***************************************************************************** 1215 * IExternalConnection interface 1216 */ 1217 #ifndef __IExternalConnection_INTERFACE_DEFINED__ 1218 #define __IExternalConnection_INTERFACE_DEFINED__ 1219 1220 typedef IExternalConnection *LPEXTERNALCONNECTION; 1221 1222 typedef enum tagEXTCONN { 1223 EXTCONN_STRONG = 0x1, 1224 EXTCONN_WEAK = 0x2, 1225 EXTCONN_CALLABLE = 0x4 1226 } EXTCONN; 1227 1228 DEFINE_GUID(IID_IExternalConnection, 0x00000019, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1229 #if defined(__cplusplus) && !defined(CINTERFACE) 1230 MIDL_INTERFACE("00000019-0000-0000-c000-000000000046") 1231 IExternalConnection : public IUnknown 1232 { 1233 virtual DWORD STDMETHODCALLTYPE AddConnection( 1234 DWORD extconn, 1235 DWORD reserved) = 0; 1236 1237 virtual DWORD STDMETHODCALLTYPE ReleaseConnection( 1238 DWORD extconn, 1239 DWORD reserved, 1240 WINBOOL fLastReleaseCloses) = 0; 1241 1242 }; 1243 #ifdef __CRT_UUID_DECL 1244 __CRT_UUID_DECL(IExternalConnection, 0x00000019, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1245 #endif 1246 #else 1247 typedef struct IExternalConnectionVtbl { 1248 BEGIN_INTERFACE 1249 1250 /*** IUnknown methods ***/ 1251 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1252 IExternalConnection* This, 1253 REFIID riid, 1254 void **ppvObject); 1255 1256 ULONG (STDMETHODCALLTYPE *AddRef)( 1257 IExternalConnection* This); 1258 1259 ULONG (STDMETHODCALLTYPE *Release)( 1260 IExternalConnection* This); 1261 1262 /*** IExternalConnection methods ***/ 1263 DWORD (STDMETHODCALLTYPE *AddConnection)( 1264 IExternalConnection* This, 1265 DWORD extconn, 1266 DWORD reserved); 1267 1268 DWORD (STDMETHODCALLTYPE *ReleaseConnection)( 1269 IExternalConnection* This, 1270 DWORD extconn, 1271 DWORD reserved, 1272 WINBOOL fLastReleaseCloses); 1273 1274 END_INTERFACE 1275 } IExternalConnectionVtbl; 1276 interface IExternalConnection { 1277 CONST_VTBL IExternalConnectionVtbl* lpVtbl; 1278 }; 1279 1280 #ifdef COBJMACROS 1281 #ifndef WIDL_C_INLINE_WRAPPERS 1282 /*** IUnknown methods ***/ 1283 #define IExternalConnection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1284 #define IExternalConnection_AddRef(This) (This)->lpVtbl->AddRef(This) 1285 #define IExternalConnection_Release(This) (This)->lpVtbl->Release(This) 1286 /*** IExternalConnection methods ***/ 1287 #define IExternalConnection_AddConnection(This,extconn,reserved) (This)->lpVtbl->AddConnection(This,extconn,reserved) 1288 #define IExternalConnection_ReleaseConnection(This,extconn,reserved,fLastReleaseCloses) (This)->lpVtbl->ReleaseConnection(This,extconn,reserved,fLastReleaseCloses) 1289 #else 1290 /*** IUnknown methods ***/ 1291 static FORCEINLINE HRESULT IExternalConnection_QueryInterface(IExternalConnection* This,REFIID riid,void **ppvObject) { 1292 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1293 } 1294 static FORCEINLINE ULONG IExternalConnection_AddRef(IExternalConnection* This) { 1295 return This->lpVtbl->AddRef(This); 1296 } 1297 static FORCEINLINE ULONG IExternalConnection_Release(IExternalConnection* This) { 1298 return This->lpVtbl->Release(This); 1299 } 1300 /*** IExternalConnection methods ***/ 1301 static FORCEINLINE DWORD IExternalConnection_AddConnection(IExternalConnection* This,DWORD extconn,DWORD reserved) { 1302 return This->lpVtbl->AddConnection(This,extconn,reserved); 1303 } 1304 static FORCEINLINE DWORD IExternalConnection_ReleaseConnection(IExternalConnection* This,DWORD extconn,DWORD reserved,WINBOOL fLastReleaseCloses) { 1305 return This->lpVtbl->ReleaseConnection(This,extconn,reserved,fLastReleaseCloses); 1306 } 1307 #endif 1308 #endif 1309 1310 #endif 1311 1312 DWORD STDMETHODCALLTYPE IExternalConnection_AddConnection_Proxy( 1313 IExternalConnection* This, 1314 DWORD extconn, 1315 DWORD reserved); 1316 void __RPC_STUB IExternalConnection_AddConnection_Stub( 1317 IRpcStubBuffer* This, 1318 IRpcChannelBuffer* pRpcChannelBuffer, 1319 PRPC_MESSAGE pRpcMessage, 1320 DWORD* pdwStubPhase); 1321 DWORD STDMETHODCALLTYPE IExternalConnection_ReleaseConnection_Proxy( 1322 IExternalConnection* This, 1323 DWORD extconn, 1324 DWORD reserved, 1325 WINBOOL fLastReleaseCloses); 1326 void __RPC_STUB IExternalConnection_ReleaseConnection_Stub( 1327 IRpcStubBuffer* This, 1328 IRpcChannelBuffer* pRpcChannelBuffer, 1329 PRPC_MESSAGE pRpcMessage, 1330 DWORD* pdwStubPhase); 1331 1332 #endif /* __IExternalConnection_INTERFACE_DEFINED__ */ 1333 1334 1335 typedef IMultiQI *LPMULTIQI; 1336 #endif 1337 1338 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 1339 typedef struct tagMULTI_QI { 1340 const IID *pIID; 1341 IUnknown *pItf; 1342 HRESULT hr; 1343 } MULTI_QI; 1344 1345 /***************************************************************************** 1346 * IMultiQI interface 1347 */ 1348 #ifndef __IMultiQI_INTERFACE_DEFINED__ 1349 #define __IMultiQI_INTERFACE_DEFINED__ 1350 1351 DEFINE_GUID(IID_IMultiQI, 0x00000020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1352 #if defined(__cplusplus) && !defined(CINTERFACE) 1353 MIDL_INTERFACE("00000020-0000-0000-c000-000000000046") 1354 IMultiQI : public IUnknown 1355 { 1356 virtual HRESULT STDMETHODCALLTYPE QueryMultipleInterfaces( 1357 ULONG cMQIs, 1358 MULTI_QI *pMQIs) = 0; 1359 1360 }; 1361 #ifdef __CRT_UUID_DECL 1362 __CRT_UUID_DECL(IMultiQI, 0x00000020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1363 #endif 1364 #else 1365 typedef struct IMultiQIVtbl { 1366 BEGIN_INTERFACE 1367 1368 /*** IUnknown methods ***/ 1369 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1370 IMultiQI* This, 1371 REFIID riid, 1372 void **ppvObject); 1373 1374 ULONG (STDMETHODCALLTYPE *AddRef)( 1375 IMultiQI* This); 1376 1377 ULONG (STDMETHODCALLTYPE *Release)( 1378 IMultiQI* This); 1379 1380 /*** IMultiQI methods ***/ 1381 HRESULT (STDMETHODCALLTYPE *QueryMultipleInterfaces)( 1382 IMultiQI* This, 1383 ULONG cMQIs, 1384 MULTI_QI *pMQIs); 1385 1386 END_INTERFACE 1387 } IMultiQIVtbl; 1388 interface IMultiQI { 1389 CONST_VTBL IMultiQIVtbl* lpVtbl; 1390 }; 1391 1392 #ifdef COBJMACROS 1393 #ifndef WIDL_C_INLINE_WRAPPERS 1394 /*** IUnknown methods ***/ 1395 #define IMultiQI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1396 #define IMultiQI_AddRef(This) (This)->lpVtbl->AddRef(This) 1397 #define IMultiQI_Release(This) (This)->lpVtbl->Release(This) 1398 /*** IMultiQI methods ***/ 1399 #define IMultiQI_QueryMultipleInterfaces(This,cMQIs,pMQIs) (This)->lpVtbl->QueryMultipleInterfaces(This,cMQIs,pMQIs) 1400 #else 1401 /*** IUnknown methods ***/ 1402 static FORCEINLINE HRESULT IMultiQI_QueryInterface(IMultiQI* This,REFIID riid,void **ppvObject) { 1403 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1404 } 1405 static FORCEINLINE ULONG IMultiQI_AddRef(IMultiQI* This) { 1406 return This->lpVtbl->AddRef(This); 1407 } 1408 static FORCEINLINE ULONG IMultiQI_Release(IMultiQI* This) { 1409 return This->lpVtbl->Release(This); 1410 } 1411 /*** IMultiQI methods ***/ 1412 static FORCEINLINE HRESULT IMultiQI_QueryMultipleInterfaces(IMultiQI* This,ULONG cMQIs,MULTI_QI *pMQIs) { 1413 return This->lpVtbl->QueryMultipleInterfaces(This,cMQIs,pMQIs); 1414 } 1415 #endif 1416 #endif 1417 1418 #endif 1419 1420 HRESULT STDMETHODCALLTYPE IMultiQI_QueryMultipleInterfaces_Proxy( 1421 IMultiQI* This, 1422 ULONG cMQIs, 1423 MULTI_QI *pMQIs); 1424 void __RPC_STUB IMultiQI_QueryMultipleInterfaces_Stub( 1425 IRpcStubBuffer* This, 1426 IRpcChannelBuffer* pRpcChannelBuffer, 1427 PRPC_MESSAGE pRpcMessage, 1428 DWORD* pdwStubPhase); 1429 1430 #endif /* __IMultiQI_INTERFACE_DEFINED__ */ 1431 1432 /***************************************************************************** 1433 * AsyncIMultiQI interface 1434 */ 1435 #ifndef __AsyncIMultiQI_INTERFACE_DEFINED__ 1436 #define __AsyncIMultiQI_INTERFACE_DEFINED__ 1437 1438 DEFINE_GUID(IID_AsyncIMultiQI, 0x000e0020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1439 #if defined(__cplusplus) && !defined(CINTERFACE) 1440 MIDL_INTERFACE("000e0020-0000-0000-c000-000000000046") 1441 AsyncIMultiQI : public IUnknown 1442 { 1443 virtual void STDMETHODCALLTYPE Begin_QueryMultipleInterfaces( 1444 ULONG cMQIs, 1445 MULTI_QI *pMQIs) = 0; 1446 1447 virtual HRESULT STDMETHODCALLTYPE Finish_QueryMultipleInterfaces( 1448 MULTI_QI *pMQIs) = 0; 1449 1450 }; 1451 #ifdef __CRT_UUID_DECL 1452 __CRT_UUID_DECL(AsyncIMultiQI, 0x000e0020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1453 #endif 1454 #else 1455 typedef struct AsyncIMultiQIVtbl { 1456 BEGIN_INTERFACE 1457 1458 /*** IUnknown methods ***/ 1459 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1460 AsyncIMultiQI* This, 1461 REFIID riid, 1462 void **ppvObject); 1463 1464 ULONG (STDMETHODCALLTYPE *AddRef)( 1465 AsyncIMultiQI* This); 1466 1467 ULONG (STDMETHODCALLTYPE *Release)( 1468 AsyncIMultiQI* This); 1469 1470 /*** IMultiQI methods ***/ 1471 void (STDMETHODCALLTYPE *Begin_QueryMultipleInterfaces)( 1472 AsyncIMultiQI* This, 1473 ULONG cMQIs, 1474 MULTI_QI *pMQIs); 1475 1476 HRESULT (STDMETHODCALLTYPE *Finish_QueryMultipleInterfaces)( 1477 AsyncIMultiQI* This, 1478 MULTI_QI *pMQIs); 1479 1480 END_INTERFACE 1481 } AsyncIMultiQIVtbl; 1482 interface AsyncIMultiQI { 1483 CONST_VTBL AsyncIMultiQIVtbl* lpVtbl; 1484 }; 1485 1486 #ifdef COBJMACROS 1487 #ifndef WIDL_C_INLINE_WRAPPERS 1488 /*** IUnknown methods ***/ 1489 #define AsyncIMultiQI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1490 #define AsyncIMultiQI_AddRef(This) (This)->lpVtbl->AddRef(This) 1491 #define AsyncIMultiQI_Release(This) (This)->lpVtbl->Release(This) 1492 /*** IMultiQI methods ***/ 1493 #define AsyncIMultiQI_Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs) (This)->lpVtbl->Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs) 1494 #define AsyncIMultiQI_Finish_QueryMultipleInterfaces(This,pMQIs) (This)->lpVtbl->Finish_QueryMultipleInterfaces(This,pMQIs) 1495 #else 1496 /*** IUnknown methods ***/ 1497 static FORCEINLINE HRESULT AsyncIMultiQI_QueryInterface(AsyncIMultiQI* This,REFIID riid,void **ppvObject) { 1498 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1499 } 1500 static FORCEINLINE ULONG AsyncIMultiQI_AddRef(AsyncIMultiQI* This) { 1501 return This->lpVtbl->AddRef(This); 1502 } 1503 static FORCEINLINE ULONG AsyncIMultiQI_Release(AsyncIMultiQI* This) { 1504 return This->lpVtbl->Release(This); 1505 } 1506 /*** IMultiQI methods ***/ 1507 static FORCEINLINE void Begin_AsyncIMultiQI_QueryMultipleInterfaces(AsyncIMultiQI* This,ULONG cMQIs,MULTI_QI *pMQIs) { 1508 This->lpVtbl->Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs); 1509 } 1510 static FORCEINLINE HRESULT Finish_AsyncIMultiQI_QueryMultipleInterfaces(AsyncIMultiQI* This,MULTI_QI *pMQIs) { 1511 return This->lpVtbl->Finish_QueryMultipleInterfaces(This); 1512 } 1513 #endif 1514 #endif 1515 1516 #endif 1517 1518 HRESULT STDMETHODCALLTYPE AsyncIMultiQI_Begin_QueryMultipleInterfaces_Proxy( 1519 IMultiQI* This, 1520 ULONG cMQIs, 1521 MULTI_QI *pMQIs); 1522 void __RPC_STUB AsyncIMultiQI_Begin_QueryMultipleInterfaces_Stub( 1523 IRpcStubBuffer* This, 1524 IRpcChannelBuffer* pRpcChannelBuffer, 1525 PRPC_MESSAGE pRpcMessage, 1526 DWORD* pdwStubPhase); 1527 HRESULT STDMETHODCALLTYPE AsyncIMultiQI_Finish_QueryMultipleInterfaces_Proxy( 1528 IMultiQI* This, 1529 ULONG cMQIs, 1530 MULTI_QI *pMQIs); 1531 void __RPC_STUB AsyncIMultiQI_Finish_QueryMultipleInterfaces_Stub( 1532 IRpcStubBuffer* This, 1533 IRpcChannelBuffer* pRpcChannelBuffer, 1534 PRPC_MESSAGE pRpcMessage, 1535 DWORD* pdwStubPhase); 1536 1537 #endif /* __AsyncIMultiQI_INTERFACE_DEFINED__ */ 1538 1539 #endif 1540 1541 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 1542 /***************************************************************************** 1543 * IInternalUnknown interface 1544 */ 1545 #ifndef __IInternalUnknown_INTERFACE_DEFINED__ 1546 #define __IInternalUnknown_INTERFACE_DEFINED__ 1547 1548 DEFINE_GUID(IID_IInternalUnknown, 0x00000021, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1549 #if defined(__cplusplus) && !defined(CINTERFACE) 1550 MIDL_INTERFACE("00000021-0000-0000-c000-000000000046") 1551 IInternalUnknown : public IUnknown 1552 { 1553 virtual HRESULT STDMETHODCALLTYPE QueryInternalInterface( 1554 REFIID riid, 1555 void **ppv) = 0; 1556 1557 }; 1558 #ifdef __CRT_UUID_DECL 1559 __CRT_UUID_DECL(IInternalUnknown, 0x00000021, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1560 #endif 1561 #else 1562 typedef struct IInternalUnknownVtbl { 1563 BEGIN_INTERFACE 1564 1565 /*** IUnknown methods ***/ 1566 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1567 IInternalUnknown* This, 1568 REFIID riid, 1569 void **ppvObject); 1570 1571 ULONG (STDMETHODCALLTYPE *AddRef)( 1572 IInternalUnknown* This); 1573 1574 ULONG (STDMETHODCALLTYPE *Release)( 1575 IInternalUnknown* This); 1576 1577 /*** IInternalUnknown methods ***/ 1578 HRESULT (STDMETHODCALLTYPE *QueryInternalInterface)( 1579 IInternalUnknown* This, 1580 REFIID riid, 1581 void **ppv); 1582 1583 END_INTERFACE 1584 } IInternalUnknownVtbl; 1585 interface IInternalUnknown { 1586 CONST_VTBL IInternalUnknownVtbl* lpVtbl; 1587 }; 1588 1589 #ifdef COBJMACROS 1590 #ifndef WIDL_C_INLINE_WRAPPERS 1591 /*** IUnknown methods ***/ 1592 #define IInternalUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1593 #define IInternalUnknown_AddRef(This) (This)->lpVtbl->AddRef(This) 1594 #define IInternalUnknown_Release(This) (This)->lpVtbl->Release(This) 1595 /*** IInternalUnknown methods ***/ 1596 #define IInternalUnknown_QueryInternalInterface(This,riid,ppv) (This)->lpVtbl->QueryInternalInterface(This,riid,ppv) 1597 #else 1598 /*** IUnknown methods ***/ 1599 static FORCEINLINE HRESULT IInternalUnknown_QueryInterface(IInternalUnknown* This,REFIID riid,void **ppvObject) { 1600 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1601 } 1602 static FORCEINLINE ULONG IInternalUnknown_AddRef(IInternalUnknown* This) { 1603 return This->lpVtbl->AddRef(This); 1604 } 1605 static FORCEINLINE ULONG IInternalUnknown_Release(IInternalUnknown* This) { 1606 return This->lpVtbl->Release(This); 1607 } 1608 /*** IInternalUnknown methods ***/ 1609 static FORCEINLINE HRESULT IInternalUnknown_QueryInternalInterface(IInternalUnknown* This,REFIID riid,void **ppv) { 1610 return This->lpVtbl->QueryInternalInterface(This,riid,ppv); 1611 } 1612 #endif 1613 #endif 1614 1615 #endif 1616 1617 HRESULT STDMETHODCALLTYPE IInternalUnknown_QueryInternalInterface_Proxy( 1618 IInternalUnknown* This, 1619 REFIID riid, 1620 void **ppv); 1621 void __RPC_STUB IInternalUnknown_QueryInternalInterface_Stub( 1622 IRpcStubBuffer* This, 1623 IRpcChannelBuffer* pRpcChannelBuffer, 1624 PRPC_MESSAGE pRpcMessage, 1625 DWORD* pdwStubPhase); 1626 1627 #endif /* __IInternalUnknown_INTERFACE_DEFINED__ */ 1628 1629 #endif 1630 1631 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 1632 /***************************************************************************** 1633 * IEnumUnknown interface 1634 */ 1635 #ifndef __IEnumUnknown_INTERFACE_DEFINED__ 1636 #define __IEnumUnknown_INTERFACE_DEFINED__ 1637 1638 typedef IEnumUnknown *LPENUMUNKNOWN; 1639 1640 DEFINE_GUID(IID_IEnumUnknown, 0x00000100, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1641 #if defined(__cplusplus) && !defined(CINTERFACE) 1642 MIDL_INTERFACE("00000100-0000-0000-c000-000000000046") 1643 IEnumUnknown : public IUnknown 1644 { 1645 virtual HRESULT STDMETHODCALLTYPE Next( 1646 ULONG celt, 1647 IUnknown **rgelt, 1648 ULONG *pceltFetched) = 0; 1649 1650 virtual HRESULT STDMETHODCALLTYPE Skip( 1651 ULONG celt) = 0; 1652 1653 virtual HRESULT STDMETHODCALLTYPE Reset( 1654 ) = 0; 1655 1656 virtual HRESULT STDMETHODCALLTYPE Clone( 1657 IEnumUnknown **ppenum) = 0; 1658 1659 }; 1660 #ifdef __CRT_UUID_DECL 1661 __CRT_UUID_DECL(IEnumUnknown, 0x00000100, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1662 #endif 1663 #else 1664 typedef struct IEnumUnknownVtbl { 1665 BEGIN_INTERFACE 1666 1667 /*** IUnknown methods ***/ 1668 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1669 IEnumUnknown* This, 1670 REFIID riid, 1671 void **ppvObject); 1672 1673 ULONG (STDMETHODCALLTYPE *AddRef)( 1674 IEnumUnknown* This); 1675 1676 ULONG (STDMETHODCALLTYPE *Release)( 1677 IEnumUnknown* This); 1678 1679 /*** IEnumUnknown methods ***/ 1680 HRESULT (STDMETHODCALLTYPE *Next)( 1681 IEnumUnknown* This, 1682 ULONG celt, 1683 IUnknown **rgelt, 1684 ULONG *pceltFetched); 1685 1686 HRESULT (STDMETHODCALLTYPE *Skip)( 1687 IEnumUnknown* This, 1688 ULONG celt); 1689 1690 HRESULT (STDMETHODCALLTYPE *Reset)( 1691 IEnumUnknown* This); 1692 1693 HRESULT (STDMETHODCALLTYPE *Clone)( 1694 IEnumUnknown* This, 1695 IEnumUnknown **ppenum); 1696 1697 END_INTERFACE 1698 } IEnumUnknownVtbl; 1699 interface IEnumUnknown { 1700 CONST_VTBL IEnumUnknownVtbl* lpVtbl; 1701 }; 1702 1703 #ifdef COBJMACROS 1704 #ifndef WIDL_C_INLINE_WRAPPERS 1705 /*** IUnknown methods ***/ 1706 #define IEnumUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1707 #define IEnumUnknown_AddRef(This) (This)->lpVtbl->AddRef(This) 1708 #define IEnumUnknown_Release(This) (This)->lpVtbl->Release(This) 1709 /*** IEnumUnknown methods ***/ 1710 #define IEnumUnknown_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 1711 #define IEnumUnknown_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 1712 #define IEnumUnknown_Reset(This) (This)->lpVtbl->Reset(This) 1713 #define IEnumUnknown_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 1714 #else 1715 /*** IUnknown methods ***/ 1716 static FORCEINLINE HRESULT IEnumUnknown_QueryInterface(IEnumUnknown* This,REFIID riid,void **ppvObject) { 1717 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1718 } 1719 static FORCEINLINE ULONG IEnumUnknown_AddRef(IEnumUnknown* This) { 1720 return This->lpVtbl->AddRef(This); 1721 } 1722 static FORCEINLINE ULONG IEnumUnknown_Release(IEnumUnknown* This) { 1723 return This->lpVtbl->Release(This); 1724 } 1725 /*** IEnumUnknown methods ***/ 1726 static FORCEINLINE HRESULT IEnumUnknown_Next(IEnumUnknown* This,ULONG celt,IUnknown **rgelt,ULONG *pceltFetched) { 1727 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 1728 } 1729 static FORCEINLINE HRESULT IEnumUnknown_Skip(IEnumUnknown* This,ULONG celt) { 1730 return This->lpVtbl->Skip(This,celt); 1731 } 1732 static FORCEINLINE HRESULT IEnumUnknown_Reset(IEnumUnknown* This) { 1733 return This->lpVtbl->Reset(This); 1734 } 1735 static FORCEINLINE HRESULT IEnumUnknown_Clone(IEnumUnknown* This,IEnumUnknown **ppenum) { 1736 return This->lpVtbl->Clone(This,ppenum); 1737 } 1738 #endif 1739 #endif 1740 1741 #endif 1742 1743 HRESULT STDMETHODCALLTYPE IEnumUnknown_RemoteNext_Proxy( 1744 IEnumUnknown* This, 1745 ULONG celt, 1746 IUnknown **rgelt, 1747 ULONG *pceltFetched); 1748 void __RPC_STUB IEnumUnknown_RemoteNext_Stub( 1749 IRpcStubBuffer* This, 1750 IRpcChannelBuffer* pRpcChannelBuffer, 1751 PRPC_MESSAGE pRpcMessage, 1752 DWORD* pdwStubPhase); 1753 HRESULT STDMETHODCALLTYPE IEnumUnknown_Skip_Proxy( 1754 IEnumUnknown* This, 1755 ULONG celt); 1756 void __RPC_STUB IEnumUnknown_Skip_Stub( 1757 IRpcStubBuffer* This, 1758 IRpcChannelBuffer* pRpcChannelBuffer, 1759 PRPC_MESSAGE pRpcMessage, 1760 DWORD* pdwStubPhase); 1761 HRESULT STDMETHODCALLTYPE IEnumUnknown_Reset_Proxy( 1762 IEnumUnknown* This); 1763 void __RPC_STUB IEnumUnknown_Reset_Stub( 1764 IRpcStubBuffer* This, 1765 IRpcChannelBuffer* pRpcChannelBuffer, 1766 PRPC_MESSAGE pRpcMessage, 1767 DWORD* pdwStubPhase); 1768 HRESULT STDMETHODCALLTYPE IEnumUnknown_Clone_Proxy( 1769 IEnumUnknown* This, 1770 IEnumUnknown **ppenum); 1771 void __RPC_STUB IEnumUnknown_Clone_Stub( 1772 IRpcStubBuffer* This, 1773 IRpcChannelBuffer* pRpcChannelBuffer, 1774 PRPC_MESSAGE pRpcMessage, 1775 DWORD* pdwStubPhase); 1776 HRESULT CALLBACK IEnumUnknown_Next_Proxy( 1777 IEnumUnknown* This, 1778 ULONG celt, 1779 IUnknown **rgelt, 1780 ULONG *pceltFetched); 1781 HRESULT __RPC_STUB IEnumUnknown_Next_Stub( 1782 IEnumUnknown* This, 1783 ULONG celt, 1784 IUnknown **rgelt, 1785 ULONG *pceltFetched); 1786 1787 #endif /* __IEnumUnknown_INTERFACE_DEFINED__ */ 1788 1789 1790 /***************************************************************************** 1791 * IEnumString interface 1792 */ 1793 #ifndef __IEnumString_INTERFACE_DEFINED__ 1794 #define __IEnumString_INTERFACE_DEFINED__ 1795 1796 typedef IEnumString *LPENUMSTRING; 1797 1798 DEFINE_GUID(IID_IEnumString, 0x00000101, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1799 #if defined(__cplusplus) && !defined(CINTERFACE) 1800 MIDL_INTERFACE("00000101-0000-0000-c000-000000000046") 1801 IEnumString : public IUnknown 1802 { 1803 virtual HRESULT STDMETHODCALLTYPE Next( 1804 ULONG celt, 1805 LPOLESTR *rgelt, 1806 ULONG *pceltFetched) = 0; 1807 1808 virtual HRESULT STDMETHODCALLTYPE Skip( 1809 ULONG celt) = 0; 1810 1811 virtual HRESULT STDMETHODCALLTYPE Reset( 1812 ) = 0; 1813 1814 virtual HRESULT STDMETHODCALLTYPE Clone( 1815 IEnumString **ppenum) = 0; 1816 1817 }; 1818 #ifdef __CRT_UUID_DECL 1819 __CRT_UUID_DECL(IEnumString, 0x00000101, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1820 #endif 1821 #else 1822 typedef struct IEnumStringVtbl { 1823 BEGIN_INTERFACE 1824 1825 /*** IUnknown methods ***/ 1826 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1827 IEnumString* This, 1828 REFIID riid, 1829 void **ppvObject); 1830 1831 ULONG (STDMETHODCALLTYPE *AddRef)( 1832 IEnumString* This); 1833 1834 ULONG (STDMETHODCALLTYPE *Release)( 1835 IEnumString* This); 1836 1837 /*** IEnumString methods ***/ 1838 HRESULT (STDMETHODCALLTYPE *Next)( 1839 IEnumString* This, 1840 ULONG celt, 1841 LPOLESTR *rgelt, 1842 ULONG *pceltFetched); 1843 1844 HRESULT (STDMETHODCALLTYPE *Skip)( 1845 IEnumString* This, 1846 ULONG celt); 1847 1848 HRESULT (STDMETHODCALLTYPE *Reset)( 1849 IEnumString* This); 1850 1851 HRESULT (STDMETHODCALLTYPE *Clone)( 1852 IEnumString* This, 1853 IEnumString **ppenum); 1854 1855 END_INTERFACE 1856 } IEnumStringVtbl; 1857 interface IEnumString { 1858 CONST_VTBL IEnumStringVtbl* lpVtbl; 1859 }; 1860 1861 #ifdef COBJMACROS 1862 #ifndef WIDL_C_INLINE_WRAPPERS 1863 /*** IUnknown methods ***/ 1864 #define IEnumString_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1865 #define IEnumString_AddRef(This) (This)->lpVtbl->AddRef(This) 1866 #define IEnumString_Release(This) (This)->lpVtbl->Release(This) 1867 /*** IEnumString methods ***/ 1868 #define IEnumString_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 1869 #define IEnumString_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 1870 #define IEnumString_Reset(This) (This)->lpVtbl->Reset(This) 1871 #define IEnumString_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 1872 #else 1873 /*** IUnknown methods ***/ 1874 static FORCEINLINE HRESULT IEnumString_QueryInterface(IEnumString* This,REFIID riid,void **ppvObject) { 1875 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1876 } 1877 static FORCEINLINE ULONG IEnumString_AddRef(IEnumString* This) { 1878 return This->lpVtbl->AddRef(This); 1879 } 1880 static FORCEINLINE ULONG IEnumString_Release(IEnumString* This) { 1881 return This->lpVtbl->Release(This); 1882 } 1883 /*** IEnumString methods ***/ 1884 static FORCEINLINE HRESULT IEnumString_Next(IEnumString* This,ULONG celt,LPOLESTR *rgelt,ULONG *pceltFetched) { 1885 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 1886 } 1887 static FORCEINLINE HRESULT IEnumString_Skip(IEnumString* This,ULONG celt) { 1888 return This->lpVtbl->Skip(This,celt); 1889 } 1890 static FORCEINLINE HRESULT IEnumString_Reset(IEnumString* This) { 1891 return This->lpVtbl->Reset(This); 1892 } 1893 static FORCEINLINE HRESULT IEnumString_Clone(IEnumString* This,IEnumString **ppenum) { 1894 return This->lpVtbl->Clone(This,ppenum); 1895 } 1896 #endif 1897 #endif 1898 1899 #endif 1900 1901 HRESULT STDMETHODCALLTYPE IEnumString_RemoteNext_Proxy( 1902 IEnumString* This, 1903 ULONG celt, 1904 LPOLESTR *rgelt, 1905 ULONG *pceltFetched); 1906 void __RPC_STUB IEnumString_RemoteNext_Stub( 1907 IRpcStubBuffer* This, 1908 IRpcChannelBuffer* pRpcChannelBuffer, 1909 PRPC_MESSAGE pRpcMessage, 1910 DWORD* pdwStubPhase); 1911 HRESULT STDMETHODCALLTYPE IEnumString_Skip_Proxy( 1912 IEnumString* This, 1913 ULONG celt); 1914 void __RPC_STUB IEnumString_Skip_Stub( 1915 IRpcStubBuffer* This, 1916 IRpcChannelBuffer* pRpcChannelBuffer, 1917 PRPC_MESSAGE pRpcMessage, 1918 DWORD* pdwStubPhase); 1919 HRESULT STDMETHODCALLTYPE IEnumString_Reset_Proxy( 1920 IEnumString* This); 1921 void __RPC_STUB IEnumString_Reset_Stub( 1922 IRpcStubBuffer* This, 1923 IRpcChannelBuffer* pRpcChannelBuffer, 1924 PRPC_MESSAGE pRpcMessage, 1925 DWORD* pdwStubPhase); 1926 HRESULT STDMETHODCALLTYPE IEnumString_Clone_Proxy( 1927 IEnumString* This, 1928 IEnumString **ppenum); 1929 void __RPC_STUB IEnumString_Clone_Stub( 1930 IRpcStubBuffer* This, 1931 IRpcChannelBuffer* pRpcChannelBuffer, 1932 PRPC_MESSAGE pRpcMessage, 1933 DWORD* pdwStubPhase); 1934 HRESULT CALLBACK IEnumString_Next_Proxy( 1935 IEnumString* This, 1936 ULONG celt, 1937 LPOLESTR *rgelt, 1938 ULONG *pceltFetched); 1939 HRESULT __RPC_STUB IEnumString_Next_Stub( 1940 IEnumString* This, 1941 ULONG celt, 1942 LPOLESTR *rgelt, 1943 ULONG *pceltFetched); 1944 1945 #endif /* __IEnumString_INTERFACE_DEFINED__ */ 1946 1947 1948 /***************************************************************************** 1949 * ISequentialStream interface 1950 */ 1951 #ifndef __ISequentialStream_INTERFACE_DEFINED__ 1952 #define __ISequentialStream_INTERFACE_DEFINED__ 1953 1954 DEFINE_GUID(IID_ISequentialStream, 0x0c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d); 1955 #if defined(__cplusplus) && !defined(CINTERFACE) 1956 MIDL_INTERFACE("0c733a30-2a1c-11ce-ade5-00aa0044773d") 1957 ISequentialStream : public IUnknown 1958 { 1959 virtual HRESULT STDMETHODCALLTYPE Read( 1960 void *pv, 1961 ULONG cb, 1962 ULONG *pcbRead) = 0; 1963 1964 virtual HRESULT STDMETHODCALLTYPE Write( 1965 const void *pv, 1966 ULONG cb, 1967 ULONG *pcbWritten) = 0; 1968 1969 }; 1970 #ifdef __CRT_UUID_DECL 1971 __CRT_UUID_DECL(ISequentialStream, 0x0c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d) 1972 #endif 1973 #else 1974 typedef struct ISequentialStreamVtbl { 1975 BEGIN_INTERFACE 1976 1977 /*** IUnknown methods ***/ 1978 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1979 ISequentialStream* This, 1980 REFIID riid, 1981 void **ppvObject); 1982 1983 ULONG (STDMETHODCALLTYPE *AddRef)( 1984 ISequentialStream* This); 1985 1986 ULONG (STDMETHODCALLTYPE *Release)( 1987 ISequentialStream* This); 1988 1989 /*** ISequentialStream methods ***/ 1990 HRESULT (STDMETHODCALLTYPE *Read)( 1991 ISequentialStream* This, 1992 void *pv, 1993 ULONG cb, 1994 ULONG *pcbRead); 1995 1996 HRESULT (STDMETHODCALLTYPE *Write)( 1997 ISequentialStream* This, 1998 const void *pv, 1999 ULONG cb, 2000 ULONG *pcbWritten); 2001 2002 END_INTERFACE 2003 } ISequentialStreamVtbl; 2004 interface ISequentialStream { 2005 CONST_VTBL ISequentialStreamVtbl* lpVtbl; 2006 }; 2007 2008 #ifdef COBJMACROS 2009 #ifndef WIDL_C_INLINE_WRAPPERS 2010 /*** IUnknown methods ***/ 2011 #define ISequentialStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2012 #define ISequentialStream_AddRef(This) (This)->lpVtbl->AddRef(This) 2013 #define ISequentialStream_Release(This) (This)->lpVtbl->Release(This) 2014 /*** ISequentialStream methods ***/ 2015 #define ISequentialStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) 2016 #define ISequentialStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) 2017 #else 2018 /*** IUnknown methods ***/ 2019 static FORCEINLINE HRESULT ISequentialStream_QueryInterface(ISequentialStream* This,REFIID riid,void **ppvObject) { 2020 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2021 } 2022 static FORCEINLINE ULONG ISequentialStream_AddRef(ISequentialStream* This) { 2023 return This->lpVtbl->AddRef(This); 2024 } 2025 static FORCEINLINE ULONG ISequentialStream_Release(ISequentialStream* This) { 2026 return This->lpVtbl->Release(This); 2027 } 2028 /*** ISequentialStream methods ***/ 2029 static FORCEINLINE HRESULT ISequentialStream_Read(ISequentialStream* This,void *pv,ULONG cb,ULONG *pcbRead) { 2030 return This->lpVtbl->Read(This,pv,cb,pcbRead); 2031 } 2032 static FORCEINLINE HRESULT ISequentialStream_Write(ISequentialStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) { 2033 return This->lpVtbl->Write(This,pv,cb,pcbWritten); 2034 } 2035 #endif 2036 #endif 2037 2038 #endif 2039 2040 HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteRead_Proxy( 2041 ISequentialStream* This, 2042 byte *pv, 2043 ULONG cb, 2044 ULONG *pcbRead); 2045 void __RPC_STUB ISequentialStream_RemoteRead_Stub( 2046 IRpcStubBuffer* This, 2047 IRpcChannelBuffer* pRpcChannelBuffer, 2048 PRPC_MESSAGE pRpcMessage, 2049 DWORD* pdwStubPhase); 2050 HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteWrite_Proxy( 2051 ISequentialStream* This, 2052 const byte *pv, 2053 ULONG cb, 2054 ULONG *pcbWritten); 2055 void __RPC_STUB ISequentialStream_RemoteWrite_Stub( 2056 IRpcStubBuffer* This, 2057 IRpcChannelBuffer* pRpcChannelBuffer, 2058 PRPC_MESSAGE pRpcMessage, 2059 DWORD* pdwStubPhase); 2060 HRESULT CALLBACK ISequentialStream_Read_Proxy( 2061 ISequentialStream* This, 2062 void *pv, 2063 ULONG cb, 2064 ULONG *pcbRead); 2065 HRESULT __RPC_STUB ISequentialStream_Read_Stub( 2066 ISequentialStream* This, 2067 byte *pv, 2068 ULONG cb, 2069 ULONG *pcbRead); 2070 HRESULT CALLBACK ISequentialStream_Write_Proxy( 2071 ISequentialStream* This, 2072 const void *pv, 2073 ULONG cb, 2074 ULONG *pcbWritten); 2075 HRESULT __RPC_STUB ISequentialStream_Write_Stub( 2076 ISequentialStream* This, 2077 const byte *pv, 2078 ULONG cb, 2079 ULONG *pcbWritten); 2080 2081 #endif /* __ISequentialStream_INTERFACE_DEFINED__ */ 2082 2083 2084 /***************************************************************************** 2085 * IStream interface 2086 */ 2087 #ifndef __IStream_INTERFACE_DEFINED__ 2088 #define __IStream_INTERFACE_DEFINED__ 2089 2090 typedef IStream *LPSTREAM; 2091 2092 typedef struct tagSTATSTG { 2093 LPOLESTR pwcsName; 2094 DWORD type; 2095 ULARGE_INTEGER cbSize; 2096 FILETIME mtime; 2097 FILETIME ctime; 2098 FILETIME atime; 2099 DWORD grfMode; 2100 DWORD grfLocksSupported; 2101 CLSID clsid; 2102 DWORD grfStateBits; 2103 DWORD reserved; 2104 } STATSTG; 2105 2106 typedef enum tagSTGTY { 2107 STGTY_STORAGE = 1, 2108 STGTY_STREAM = 2, 2109 STGTY_LOCKBYTES = 3, 2110 STGTY_PROPERTY = 4 2111 } STGTY; 2112 2113 typedef enum tagSTREAM_SEEK { 2114 STREAM_SEEK_SET = 0, 2115 STREAM_SEEK_CUR = 1, 2116 STREAM_SEEK_END = 2 2117 } STREAM_SEEK; 2118 2119 typedef enum tagLOCKTYPE { 2120 LOCK_WRITE = 1, 2121 LOCK_EXCLUSIVE = 2, 2122 LOCK_ONLYONCE = 4 2123 } LOCKTYPE; 2124 2125 DEFINE_GUID(IID_IStream, 0x0000000c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2126 #if defined(__cplusplus) && !defined(CINTERFACE) 2127 MIDL_INTERFACE("0000000c-0000-0000-c000-000000000046") 2128 IStream : public ISequentialStream 2129 { 2130 virtual HRESULT STDMETHODCALLTYPE Seek( 2131 LARGE_INTEGER dlibMove, 2132 DWORD dwOrigin, 2133 ULARGE_INTEGER *plibNewPosition) = 0; 2134 2135 virtual HRESULT STDMETHODCALLTYPE SetSize( 2136 ULARGE_INTEGER libNewSize) = 0; 2137 2138 virtual HRESULT STDMETHODCALLTYPE CopyTo( 2139 IStream *pstm, 2140 ULARGE_INTEGER cb, 2141 ULARGE_INTEGER *pcbRead, 2142 ULARGE_INTEGER *pcbWritten) = 0; 2143 2144 virtual HRESULT STDMETHODCALLTYPE Commit( 2145 DWORD grfCommitFlags) = 0; 2146 2147 virtual HRESULT STDMETHODCALLTYPE Revert( 2148 ) = 0; 2149 2150 virtual HRESULT STDMETHODCALLTYPE LockRegion( 2151 ULARGE_INTEGER libOffset, 2152 ULARGE_INTEGER cb, 2153 DWORD dwLockType) = 0; 2154 2155 virtual HRESULT STDMETHODCALLTYPE UnlockRegion( 2156 ULARGE_INTEGER libOffset, 2157 ULARGE_INTEGER cb, 2158 DWORD dwLockType) = 0; 2159 2160 virtual HRESULT STDMETHODCALLTYPE Stat( 2161 STATSTG *pstatstg, 2162 DWORD grfStatFlag) = 0; 2163 2164 virtual HRESULT STDMETHODCALLTYPE Clone( 2165 IStream **ppstm) = 0; 2166 2167 }; 2168 #ifdef __CRT_UUID_DECL 2169 __CRT_UUID_DECL(IStream, 0x0000000c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2170 #endif 2171 #else 2172 typedef struct IStreamVtbl { 2173 BEGIN_INTERFACE 2174 2175 /*** IUnknown methods ***/ 2176 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2177 IStream* This, 2178 REFIID riid, 2179 void **ppvObject); 2180 2181 ULONG (STDMETHODCALLTYPE *AddRef)( 2182 IStream* This); 2183 2184 ULONG (STDMETHODCALLTYPE *Release)( 2185 IStream* This); 2186 2187 /*** ISequentialStream methods ***/ 2188 HRESULT (STDMETHODCALLTYPE *Read)( 2189 IStream* This, 2190 void *pv, 2191 ULONG cb, 2192 ULONG *pcbRead); 2193 2194 HRESULT (STDMETHODCALLTYPE *Write)( 2195 IStream* This, 2196 const void *pv, 2197 ULONG cb, 2198 ULONG *pcbWritten); 2199 2200 /*** IStream methods ***/ 2201 HRESULT (STDMETHODCALLTYPE *Seek)( 2202 IStream* This, 2203 LARGE_INTEGER dlibMove, 2204 DWORD dwOrigin, 2205 ULARGE_INTEGER *plibNewPosition); 2206 2207 HRESULT (STDMETHODCALLTYPE *SetSize)( 2208 IStream* This, 2209 ULARGE_INTEGER libNewSize); 2210 2211 HRESULT (STDMETHODCALLTYPE *CopyTo)( 2212 IStream* This, 2213 IStream *pstm, 2214 ULARGE_INTEGER cb, 2215 ULARGE_INTEGER *pcbRead, 2216 ULARGE_INTEGER *pcbWritten); 2217 2218 HRESULT (STDMETHODCALLTYPE *Commit)( 2219 IStream* This, 2220 DWORD grfCommitFlags); 2221 2222 HRESULT (STDMETHODCALLTYPE *Revert)( 2223 IStream* This); 2224 2225 HRESULT (STDMETHODCALLTYPE *LockRegion)( 2226 IStream* This, 2227 ULARGE_INTEGER libOffset, 2228 ULARGE_INTEGER cb, 2229 DWORD dwLockType); 2230 2231 HRESULT (STDMETHODCALLTYPE *UnlockRegion)( 2232 IStream* This, 2233 ULARGE_INTEGER libOffset, 2234 ULARGE_INTEGER cb, 2235 DWORD dwLockType); 2236 2237 HRESULT (STDMETHODCALLTYPE *Stat)( 2238 IStream* This, 2239 STATSTG *pstatstg, 2240 DWORD grfStatFlag); 2241 2242 HRESULT (STDMETHODCALLTYPE *Clone)( 2243 IStream* This, 2244 IStream **ppstm); 2245 2246 END_INTERFACE 2247 } IStreamVtbl; 2248 interface IStream { 2249 CONST_VTBL IStreamVtbl* lpVtbl; 2250 }; 2251 2252 #ifdef COBJMACROS 2253 #ifndef WIDL_C_INLINE_WRAPPERS 2254 /*** IUnknown methods ***/ 2255 #define IStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2256 #define IStream_AddRef(This) (This)->lpVtbl->AddRef(This) 2257 #define IStream_Release(This) (This)->lpVtbl->Release(This) 2258 /*** ISequentialStream methods ***/ 2259 #define IStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) 2260 #define IStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) 2261 /*** IStream methods ***/ 2262 #define IStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition) 2263 #define IStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize) 2264 #define IStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten) 2265 #define IStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) 2266 #define IStream_Revert(This) (This)->lpVtbl->Revert(This) 2267 #define IStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType) 2268 #define IStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType) 2269 #define IStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) 2270 #define IStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm) 2271 #else 2272 /*** IUnknown methods ***/ 2273 static FORCEINLINE HRESULT IStream_QueryInterface(IStream* This,REFIID riid,void **ppvObject) { 2274 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2275 } 2276 static FORCEINLINE ULONG IStream_AddRef(IStream* This) { 2277 return This->lpVtbl->AddRef(This); 2278 } 2279 static FORCEINLINE ULONG IStream_Release(IStream* This) { 2280 return This->lpVtbl->Release(This); 2281 } 2282 /*** ISequentialStream methods ***/ 2283 static FORCEINLINE HRESULT IStream_Read(IStream* This,void *pv,ULONG cb,ULONG *pcbRead) { 2284 return This->lpVtbl->Read(This,pv,cb,pcbRead); 2285 } 2286 static FORCEINLINE HRESULT IStream_Write(IStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) { 2287 return This->lpVtbl->Write(This,pv,cb,pcbWritten); 2288 } 2289 /*** IStream methods ***/ 2290 static FORCEINLINE HRESULT IStream_Seek(IStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) { 2291 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition); 2292 } 2293 static FORCEINLINE HRESULT IStream_SetSize(IStream* This,ULARGE_INTEGER libNewSize) { 2294 return This->lpVtbl->SetSize(This,libNewSize); 2295 } 2296 static FORCEINLINE HRESULT IStream_CopyTo(IStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) { 2297 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten); 2298 } 2299 static FORCEINLINE HRESULT IStream_Commit(IStream* This,DWORD grfCommitFlags) { 2300 return This->lpVtbl->Commit(This,grfCommitFlags); 2301 } 2302 static FORCEINLINE HRESULT IStream_Revert(IStream* This) { 2303 return This->lpVtbl->Revert(This); 2304 } 2305 static FORCEINLINE HRESULT IStream_LockRegion(IStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { 2306 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType); 2307 } 2308 static FORCEINLINE HRESULT IStream_UnlockRegion(IStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { 2309 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType); 2310 } 2311 static FORCEINLINE HRESULT IStream_Stat(IStream* This,STATSTG *pstatstg,DWORD grfStatFlag) { 2312 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag); 2313 } 2314 static FORCEINLINE HRESULT IStream_Clone(IStream* This,IStream **ppstm) { 2315 return This->lpVtbl->Clone(This,ppstm); 2316 } 2317 #endif 2318 #endif 2319 2320 #endif 2321 2322 HRESULT STDMETHODCALLTYPE IStream_RemoteSeek_Proxy( 2323 IStream* This, 2324 LARGE_INTEGER dlibMove, 2325 DWORD dwOrigin, 2326 ULARGE_INTEGER *plibNewPosition); 2327 void __RPC_STUB IStream_RemoteSeek_Stub( 2328 IRpcStubBuffer* This, 2329 IRpcChannelBuffer* pRpcChannelBuffer, 2330 PRPC_MESSAGE pRpcMessage, 2331 DWORD* pdwStubPhase); 2332 HRESULT STDMETHODCALLTYPE IStream_SetSize_Proxy( 2333 IStream* This, 2334 ULARGE_INTEGER libNewSize); 2335 void __RPC_STUB IStream_SetSize_Stub( 2336 IRpcStubBuffer* This, 2337 IRpcChannelBuffer* pRpcChannelBuffer, 2338 PRPC_MESSAGE pRpcMessage, 2339 DWORD* pdwStubPhase); 2340 HRESULT STDMETHODCALLTYPE IStream_RemoteCopyTo_Proxy( 2341 IStream* This, 2342 IStream *pstm, 2343 ULARGE_INTEGER cb, 2344 ULARGE_INTEGER *pcbRead, 2345 ULARGE_INTEGER *pcbWritten); 2346 void __RPC_STUB IStream_RemoteCopyTo_Stub( 2347 IRpcStubBuffer* This, 2348 IRpcChannelBuffer* pRpcChannelBuffer, 2349 PRPC_MESSAGE pRpcMessage, 2350 DWORD* pdwStubPhase); 2351 HRESULT STDMETHODCALLTYPE IStream_Commit_Proxy( 2352 IStream* This, 2353 DWORD grfCommitFlags); 2354 void __RPC_STUB IStream_Commit_Stub( 2355 IRpcStubBuffer* This, 2356 IRpcChannelBuffer* pRpcChannelBuffer, 2357 PRPC_MESSAGE pRpcMessage, 2358 DWORD* pdwStubPhase); 2359 HRESULT STDMETHODCALLTYPE IStream_Revert_Proxy( 2360 IStream* This); 2361 void __RPC_STUB IStream_Revert_Stub( 2362 IRpcStubBuffer* This, 2363 IRpcChannelBuffer* pRpcChannelBuffer, 2364 PRPC_MESSAGE pRpcMessage, 2365 DWORD* pdwStubPhase); 2366 HRESULT STDMETHODCALLTYPE IStream_LockRegion_Proxy( 2367 IStream* This, 2368 ULARGE_INTEGER libOffset, 2369 ULARGE_INTEGER cb, 2370 DWORD dwLockType); 2371 void __RPC_STUB IStream_LockRegion_Stub( 2372 IRpcStubBuffer* This, 2373 IRpcChannelBuffer* pRpcChannelBuffer, 2374 PRPC_MESSAGE pRpcMessage, 2375 DWORD* pdwStubPhase); 2376 HRESULT STDMETHODCALLTYPE IStream_UnlockRegion_Proxy( 2377 IStream* This, 2378 ULARGE_INTEGER libOffset, 2379 ULARGE_INTEGER cb, 2380 DWORD dwLockType); 2381 void __RPC_STUB IStream_UnlockRegion_Stub( 2382 IRpcStubBuffer* This, 2383 IRpcChannelBuffer* pRpcChannelBuffer, 2384 PRPC_MESSAGE pRpcMessage, 2385 DWORD* pdwStubPhase); 2386 HRESULT STDMETHODCALLTYPE IStream_Stat_Proxy( 2387 IStream* This, 2388 STATSTG *pstatstg, 2389 DWORD grfStatFlag); 2390 void __RPC_STUB IStream_Stat_Stub( 2391 IRpcStubBuffer* This, 2392 IRpcChannelBuffer* pRpcChannelBuffer, 2393 PRPC_MESSAGE pRpcMessage, 2394 DWORD* pdwStubPhase); 2395 HRESULT STDMETHODCALLTYPE IStream_Clone_Proxy( 2396 IStream* This, 2397 IStream **ppstm); 2398 void __RPC_STUB IStream_Clone_Stub( 2399 IRpcStubBuffer* This, 2400 IRpcChannelBuffer* pRpcChannelBuffer, 2401 PRPC_MESSAGE pRpcMessage, 2402 DWORD* pdwStubPhase); 2403 HRESULT CALLBACK IStream_Seek_Proxy( 2404 IStream* This, 2405 LARGE_INTEGER dlibMove, 2406 DWORD dwOrigin, 2407 ULARGE_INTEGER *plibNewPosition); 2408 HRESULT __RPC_STUB IStream_Seek_Stub( 2409 IStream* This, 2410 LARGE_INTEGER dlibMove, 2411 DWORD dwOrigin, 2412 ULARGE_INTEGER *plibNewPosition); 2413 HRESULT CALLBACK IStream_CopyTo_Proxy( 2414 IStream* This, 2415 IStream *pstm, 2416 ULARGE_INTEGER cb, 2417 ULARGE_INTEGER *pcbRead, 2418 ULARGE_INTEGER *pcbWritten); 2419 HRESULT __RPC_STUB IStream_CopyTo_Stub( 2420 IStream* This, 2421 IStream *pstm, 2422 ULARGE_INTEGER cb, 2423 ULARGE_INTEGER *pcbRead, 2424 ULARGE_INTEGER *pcbWritten); 2425 2426 #endif /* __IStream_INTERFACE_DEFINED__ */ 2427 2428 2429 /***************************************************************************** 2430 * IRpcChannelBuffer interface 2431 */ 2432 #ifndef __IRpcChannelBuffer_INTERFACE_DEFINED__ 2433 #define __IRpcChannelBuffer_INTERFACE_DEFINED__ 2434 2435 typedef ULONG RPCOLEDATAREP; 2436 2437 typedef struct tagRPCOLEMESSAGE { 2438 void *reserved1; 2439 RPCOLEDATAREP dataRepresentation; 2440 void *Buffer; 2441 ULONG cbBuffer; 2442 ULONG iMethod; 2443 void * reserved2[5]; 2444 ULONG rpcFlags; 2445 } RPCOLEMESSAGE; 2446 2447 typedef RPCOLEMESSAGE *PRPCOLEMESSAGE; 2448 2449 DEFINE_GUID(IID_IRpcChannelBuffer, 0xd5f56b60, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); 2450 #if defined(__cplusplus) && !defined(CINTERFACE) 2451 MIDL_INTERFACE("d5f56b60-593b-101a-b569-08002b2dbf7a") 2452 IRpcChannelBuffer : public IUnknown 2453 { 2454 virtual HRESULT STDMETHODCALLTYPE GetBuffer( 2455 RPCOLEMESSAGE *pMessage, 2456 REFIID riid) = 0; 2457 2458 virtual HRESULT STDMETHODCALLTYPE SendReceive( 2459 RPCOLEMESSAGE *pMessage, 2460 ULONG *pStatus) = 0; 2461 2462 virtual HRESULT STDMETHODCALLTYPE FreeBuffer( 2463 RPCOLEMESSAGE *pMessage) = 0; 2464 2465 virtual HRESULT STDMETHODCALLTYPE GetDestCtx( 2466 DWORD *pdwDestContext, 2467 void **ppvDestContext) = 0; 2468 2469 virtual HRESULT STDMETHODCALLTYPE IsConnected( 2470 ) = 0; 2471 2472 }; 2473 #ifdef __CRT_UUID_DECL 2474 __CRT_UUID_DECL(IRpcChannelBuffer, 0xd5f56b60, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a) 2475 #endif 2476 #else 2477 typedef struct IRpcChannelBufferVtbl { 2478 BEGIN_INTERFACE 2479 2480 /*** IUnknown methods ***/ 2481 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2482 IRpcChannelBuffer* This, 2483 REFIID riid, 2484 void **ppvObject); 2485 2486 ULONG (STDMETHODCALLTYPE *AddRef)( 2487 IRpcChannelBuffer* This); 2488 2489 ULONG (STDMETHODCALLTYPE *Release)( 2490 IRpcChannelBuffer* This); 2491 2492 /*** IRpcChannelBuffer methods ***/ 2493 HRESULT (STDMETHODCALLTYPE *GetBuffer)( 2494 IRpcChannelBuffer* This, 2495 RPCOLEMESSAGE *pMessage, 2496 REFIID riid); 2497 2498 HRESULT (STDMETHODCALLTYPE *SendReceive)( 2499 IRpcChannelBuffer* This, 2500 RPCOLEMESSAGE *pMessage, 2501 ULONG *pStatus); 2502 2503 HRESULT (STDMETHODCALLTYPE *FreeBuffer)( 2504 IRpcChannelBuffer* This, 2505 RPCOLEMESSAGE *pMessage); 2506 2507 HRESULT (STDMETHODCALLTYPE *GetDestCtx)( 2508 IRpcChannelBuffer* This, 2509 DWORD *pdwDestContext, 2510 void **ppvDestContext); 2511 2512 HRESULT (STDMETHODCALLTYPE *IsConnected)( 2513 IRpcChannelBuffer* This); 2514 2515 END_INTERFACE 2516 } IRpcChannelBufferVtbl; 2517 interface IRpcChannelBuffer { 2518 CONST_VTBL IRpcChannelBufferVtbl* lpVtbl; 2519 }; 2520 2521 #ifdef COBJMACROS 2522 #ifndef WIDL_C_INLINE_WRAPPERS 2523 /*** IUnknown methods ***/ 2524 #define IRpcChannelBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2525 #define IRpcChannelBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) 2526 #define IRpcChannelBuffer_Release(This) (This)->lpVtbl->Release(This) 2527 /*** IRpcChannelBuffer methods ***/ 2528 #define IRpcChannelBuffer_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) 2529 #define IRpcChannelBuffer_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) 2530 #define IRpcChannelBuffer_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) 2531 #define IRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) 2532 #define IRpcChannelBuffer_IsConnected(This) (This)->lpVtbl->IsConnected(This) 2533 #else 2534 /*** IUnknown methods ***/ 2535 static FORCEINLINE HRESULT IRpcChannelBuffer_QueryInterface(IRpcChannelBuffer* This,REFIID riid,void **ppvObject) { 2536 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2537 } 2538 static FORCEINLINE ULONG IRpcChannelBuffer_AddRef(IRpcChannelBuffer* This) { 2539 return This->lpVtbl->AddRef(This); 2540 } 2541 static FORCEINLINE ULONG IRpcChannelBuffer_Release(IRpcChannelBuffer* This) { 2542 return This->lpVtbl->Release(This); 2543 } 2544 /*** IRpcChannelBuffer methods ***/ 2545 static FORCEINLINE HRESULT IRpcChannelBuffer_GetBuffer(IRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,REFIID riid) { 2546 return This->lpVtbl->GetBuffer(This,pMessage,riid); 2547 } 2548 static FORCEINLINE HRESULT IRpcChannelBuffer_SendReceive(IRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) { 2549 return This->lpVtbl->SendReceive(This,pMessage,pStatus); 2550 } 2551 static FORCEINLINE HRESULT IRpcChannelBuffer_FreeBuffer(IRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage) { 2552 return This->lpVtbl->FreeBuffer(This,pMessage); 2553 } 2554 static FORCEINLINE HRESULT IRpcChannelBuffer_GetDestCtx(IRpcChannelBuffer* This,DWORD *pdwDestContext,void **ppvDestContext) { 2555 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext); 2556 } 2557 static FORCEINLINE HRESULT IRpcChannelBuffer_IsConnected(IRpcChannelBuffer* This) { 2558 return This->lpVtbl->IsConnected(This); 2559 } 2560 #endif 2561 #endif 2562 2563 #endif 2564 2565 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_GetBuffer_Proxy( 2566 IRpcChannelBuffer* This, 2567 RPCOLEMESSAGE *pMessage, 2568 REFIID riid); 2569 void __RPC_STUB IRpcChannelBuffer_GetBuffer_Stub( 2570 IRpcStubBuffer* This, 2571 IRpcChannelBuffer* pRpcChannelBuffer, 2572 PRPC_MESSAGE pRpcMessage, 2573 DWORD* pdwStubPhase); 2574 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_SendReceive_Proxy( 2575 IRpcChannelBuffer* This, 2576 RPCOLEMESSAGE *pMessage, 2577 ULONG *pStatus); 2578 void __RPC_STUB IRpcChannelBuffer_SendReceive_Stub( 2579 IRpcStubBuffer* This, 2580 IRpcChannelBuffer* pRpcChannelBuffer, 2581 PRPC_MESSAGE pRpcMessage, 2582 DWORD* pdwStubPhase); 2583 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_FreeBuffer_Proxy( 2584 IRpcChannelBuffer* This, 2585 RPCOLEMESSAGE *pMessage); 2586 void __RPC_STUB IRpcChannelBuffer_FreeBuffer_Stub( 2587 IRpcStubBuffer* This, 2588 IRpcChannelBuffer* pRpcChannelBuffer, 2589 PRPC_MESSAGE pRpcMessage, 2590 DWORD* pdwStubPhase); 2591 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_GetDestCtx_Proxy( 2592 IRpcChannelBuffer* This, 2593 DWORD *pdwDestContext, 2594 void **ppvDestContext); 2595 void __RPC_STUB IRpcChannelBuffer_GetDestCtx_Stub( 2596 IRpcStubBuffer* This, 2597 IRpcChannelBuffer* pRpcChannelBuffer, 2598 PRPC_MESSAGE pRpcMessage, 2599 DWORD* pdwStubPhase); 2600 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_IsConnected_Proxy( 2601 IRpcChannelBuffer* This); 2602 void __RPC_STUB IRpcChannelBuffer_IsConnected_Stub( 2603 IRpcStubBuffer* This, 2604 IRpcChannelBuffer* pRpcChannelBuffer, 2605 PRPC_MESSAGE pRpcMessage, 2606 DWORD* pdwStubPhase); 2607 2608 #endif /* __IRpcChannelBuffer_INTERFACE_DEFINED__ */ 2609 2610 #endif 2611 2612 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 2613 /***************************************************************************** 2614 * IRpcChannelBuffer2 interface 2615 */ 2616 #ifndef __IRpcChannelBuffer2_INTERFACE_DEFINED__ 2617 #define __IRpcChannelBuffer2_INTERFACE_DEFINED__ 2618 2619 DEFINE_GUID(IID_IRpcChannelBuffer2, 0x594f31d0, 0x7f19, 0x11d0, 0xb1,0x94, 0x00,0xa0,0xc9,0x0d,0xc8,0xbf); 2620 #if defined(__cplusplus) && !defined(CINTERFACE) 2621 MIDL_INTERFACE("594f31d0-7f19-11d0-b194-00a0c90dc8bf") 2622 IRpcChannelBuffer2 : public IRpcChannelBuffer 2623 { 2624 virtual HRESULT STDMETHODCALLTYPE GetProtocolVersion( 2625 DWORD *pdwVersion) = 0; 2626 2627 }; 2628 #ifdef __CRT_UUID_DECL 2629 __CRT_UUID_DECL(IRpcChannelBuffer2, 0x594f31d0, 0x7f19, 0x11d0, 0xb1,0x94, 0x00,0xa0,0xc9,0x0d,0xc8,0xbf) 2630 #endif 2631 #else 2632 typedef struct IRpcChannelBuffer2Vtbl { 2633 BEGIN_INTERFACE 2634 2635 /*** IUnknown methods ***/ 2636 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2637 IRpcChannelBuffer2* This, 2638 REFIID riid, 2639 void **ppvObject); 2640 2641 ULONG (STDMETHODCALLTYPE *AddRef)( 2642 IRpcChannelBuffer2* This); 2643 2644 ULONG (STDMETHODCALLTYPE *Release)( 2645 IRpcChannelBuffer2* This); 2646 2647 /*** IRpcChannelBuffer methods ***/ 2648 HRESULT (STDMETHODCALLTYPE *GetBuffer)( 2649 IRpcChannelBuffer2* This, 2650 RPCOLEMESSAGE *pMessage, 2651 REFIID riid); 2652 2653 HRESULT (STDMETHODCALLTYPE *SendReceive)( 2654 IRpcChannelBuffer2* This, 2655 RPCOLEMESSAGE *pMessage, 2656 ULONG *pStatus); 2657 2658 HRESULT (STDMETHODCALLTYPE *FreeBuffer)( 2659 IRpcChannelBuffer2* This, 2660 RPCOLEMESSAGE *pMessage); 2661 2662 HRESULT (STDMETHODCALLTYPE *GetDestCtx)( 2663 IRpcChannelBuffer2* This, 2664 DWORD *pdwDestContext, 2665 void **ppvDestContext); 2666 2667 HRESULT (STDMETHODCALLTYPE *IsConnected)( 2668 IRpcChannelBuffer2* This); 2669 2670 /*** IRpcChannelBuffer2 methods ***/ 2671 HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)( 2672 IRpcChannelBuffer2* This, 2673 DWORD *pdwVersion); 2674 2675 END_INTERFACE 2676 } IRpcChannelBuffer2Vtbl; 2677 interface IRpcChannelBuffer2 { 2678 CONST_VTBL IRpcChannelBuffer2Vtbl* lpVtbl; 2679 }; 2680 2681 #ifdef COBJMACROS 2682 #ifndef WIDL_C_INLINE_WRAPPERS 2683 /*** IUnknown methods ***/ 2684 #define IRpcChannelBuffer2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2685 #define IRpcChannelBuffer2_AddRef(This) (This)->lpVtbl->AddRef(This) 2686 #define IRpcChannelBuffer2_Release(This) (This)->lpVtbl->Release(This) 2687 /*** IRpcChannelBuffer methods ***/ 2688 #define IRpcChannelBuffer2_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) 2689 #define IRpcChannelBuffer2_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) 2690 #define IRpcChannelBuffer2_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) 2691 #define IRpcChannelBuffer2_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) 2692 #define IRpcChannelBuffer2_IsConnected(This) (This)->lpVtbl->IsConnected(This) 2693 /*** IRpcChannelBuffer2 methods ***/ 2694 #define IRpcChannelBuffer2_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion) 2695 #else 2696 /*** IUnknown methods ***/ 2697 static FORCEINLINE HRESULT IRpcChannelBuffer2_QueryInterface(IRpcChannelBuffer2* This,REFIID riid,void **ppvObject) { 2698 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2699 } 2700 static FORCEINLINE ULONG IRpcChannelBuffer2_AddRef(IRpcChannelBuffer2* This) { 2701 return This->lpVtbl->AddRef(This); 2702 } 2703 static FORCEINLINE ULONG IRpcChannelBuffer2_Release(IRpcChannelBuffer2* This) { 2704 return This->lpVtbl->Release(This); 2705 } 2706 /*** IRpcChannelBuffer methods ***/ 2707 static FORCEINLINE HRESULT IRpcChannelBuffer2_GetBuffer(IRpcChannelBuffer2* This,RPCOLEMESSAGE *pMessage,REFIID riid) { 2708 return This->lpVtbl->GetBuffer(This,pMessage,riid); 2709 } 2710 static FORCEINLINE HRESULT IRpcChannelBuffer2_SendReceive(IRpcChannelBuffer2* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) { 2711 return This->lpVtbl->SendReceive(This,pMessage,pStatus); 2712 } 2713 static FORCEINLINE HRESULT IRpcChannelBuffer2_FreeBuffer(IRpcChannelBuffer2* This,RPCOLEMESSAGE *pMessage) { 2714 return This->lpVtbl->FreeBuffer(This,pMessage); 2715 } 2716 static FORCEINLINE HRESULT IRpcChannelBuffer2_GetDestCtx(IRpcChannelBuffer2* This,DWORD *pdwDestContext,void **ppvDestContext) { 2717 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext); 2718 } 2719 static FORCEINLINE HRESULT IRpcChannelBuffer2_IsConnected(IRpcChannelBuffer2* This) { 2720 return This->lpVtbl->IsConnected(This); 2721 } 2722 /*** IRpcChannelBuffer2 methods ***/ 2723 static FORCEINLINE HRESULT IRpcChannelBuffer2_GetProtocolVersion(IRpcChannelBuffer2* This,DWORD *pdwVersion) { 2724 return This->lpVtbl->GetProtocolVersion(This,pdwVersion); 2725 } 2726 #endif 2727 #endif 2728 2729 #endif 2730 2731 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer2_GetProtocolVersion_Proxy( 2732 IRpcChannelBuffer2* This, 2733 DWORD *pdwVersion); 2734 void __RPC_STUB IRpcChannelBuffer2_GetProtocolVersion_Stub( 2735 IRpcStubBuffer* This, 2736 IRpcChannelBuffer* pRpcChannelBuffer, 2737 PRPC_MESSAGE pRpcMessage, 2738 DWORD* pdwStubPhase); 2739 2740 #endif /* __IRpcChannelBuffer2_INTERFACE_DEFINED__ */ 2741 2742 2743 /***************************************************************************** 2744 * IAsyncRpcChannelBuffer interface 2745 */ 2746 #ifndef __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ 2747 #define __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ 2748 2749 DEFINE_GUID(IID_IAsyncRpcChannelBuffer, 0xa5029fb6, 0x3c34, 0x11d1, 0x9c,0x99, 0x00,0xc0,0x4f,0xb9,0x98,0xaa); 2750 #if defined(__cplusplus) && !defined(CINTERFACE) 2751 MIDL_INTERFACE("a5029fb6-3c34-11d1-9c99-00c04fb998aa") 2752 IAsyncRpcChannelBuffer : public IRpcChannelBuffer2 2753 { 2754 virtual HRESULT STDMETHODCALLTYPE Send( 2755 RPCOLEMESSAGE *pMsg, 2756 ISynchronize *pSync, 2757 ULONG *pulStatus) = 0; 2758 2759 virtual HRESULT STDMETHODCALLTYPE Receive( 2760 RPCOLEMESSAGE *pMsg, 2761 ULONG *pulStatus) = 0; 2762 2763 virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx( 2764 RPCOLEMESSAGE *pMsg, 2765 DWORD *pdwDestContext, 2766 void **ppvDestContext) = 0; 2767 2768 }; 2769 #ifdef __CRT_UUID_DECL 2770 __CRT_UUID_DECL(IAsyncRpcChannelBuffer, 0xa5029fb6, 0x3c34, 0x11d1, 0x9c,0x99, 0x00,0xc0,0x4f,0xb9,0x98,0xaa) 2771 #endif 2772 #else 2773 typedef struct IAsyncRpcChannelBufferVtbl { 2774 BEGIN_INTERFACE 2775 2776 /*** IUnknown methods ***/ 2777 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2778 IAsyncRpcChannelBuffer* This, 2779 REFIID riid, 2780 void **ppvObject); 2781 2782 ULONG (STDMETHODCALLTYPE *AddRef)( 2783 IAsyncRpcChannelBuffer* This); 2784 2785 ULONG (STDMETHODCALLTYPE *Release)( 2786 IAsyncRpcChannelBuffer* This); 2787 2788 /*** IRpcChannelBuffer methods ***/ 2789 HRESULT (STDMETHODCALLTYPE *GetBuffer)( 2790 IAsyncRpcChannelBuffer* This, 2791 RPCOLEMESSAGE *pMessage, 2792 REFIID riid); 2793 2794 HRESULT (STDMETHODCALLTYPE *SendReceive)( 2795 IAsyncRpcChannelBuffer* This, 2796 RPCOLEMESSAGE *pMessage, 2797 ULONG *pStatus); 2798 2799 HRESULT (STDMETHODCALLTYPE *FreeBuffer)( 2800 IAsyncRpcChannelBuffer* This, 2801 RPCOLEMESSAGE *pMessage); 2802 2803 HRESULT (STDMETHODCALLTYPE *GetDestCtx)( 2804 IAsyncRpcChannelBuffer* This, 2805 DWORD *pdwDestContext, 2806 void **ppvDestContext); 2807 2808 HRESULT (STDMETHODCALLTYPE *IsConnected)( 2809 IAsyncRpcChannelBuffer* This); 2810 2811 /*** IRpcChannelBuffer2 methods ***/ 2812 HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)( 2813 IAsyncRpcChannelBuffer* This, 2814 DWORD *pdwVersion); 2815 2816 /*** IAsyncRpcChannelBuffer methods ***/ 2817 HRESULT (STDMETHODCALLTYPE *Send)( 2818 IAsyncRpcChannelBuffer* This, 2819 RPCOLEMESSAGE *pMsg, 2820 ISynchronize *pSync, 2821 ULONG *pulStatus); 2822 2823 HRESULT (STDMETHODCALLTYPE *Receive)( 2824 IAsyncRpcChannelBuffer* This, 2825 RPCOLEMESSAGE *pMsg, 2826 ULONG *pulStatus); 2827 2828 HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)( 2829 IAsyncRpcChannelBuffer* This, 2830 RPCOLEMESSAGE *pMsg, 2831 DWORD *pdwDestContext, 2832 void **ppvDestContext); 2833 2834 END_INTERFACE 2835 } IAsyncRpcChannelBufferVtbl; 2836 interface IAsyncRpcChannelBuffer { 2837 CONST_VTBL IAsyncRpcChannelBufferVtbl* lpVtbl; 2838 }; 2839 2840 #ifdef COBJMACROS 2841 #ifndef WIDL_C_INLINE_WRAPPERS 2842 /*** IUnknown methods ***/ 2843 #define IAsyncRpcChannelBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2844 #define IAsyncRpcChannelBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) 2845 #define IAsyncRpcChannelBuffer_Release(This) (This)->lpVtbl->Release(This) 2846 /*** IRpcChannelBuffer methods ***/ 2847 #define IAsyncRpcChannelBuffer_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) 2848 #define IAsyncRpcChannelBuffer_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) 2849 #define IAsyncRpcChannelBuffer_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) 2850 #define IAsyncRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) 2851 #define IAsyncRpcChannelBuffer_IsConnected(This) (This)->lpVtbl->IsConnected(This) 2852 /*** IRpcChannelBuffer2 methods ***/ 2853 #define IAsyncRpcChannelBuffer_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion) 2854 /*** IAsyncRpcChannelBuffer methods ***/ 2855 #define IAsyncRpcChannelBuffer_Send(This,pMsg,pSync,pulStatus) (This)->lpVtbl->Send(This,pMsg,pSync,pulStatus) 2856 #define IAsyncRpcChannelBuffer_Receive(This,pMsg,pulStatus) (This)->lpVtbl->Receive(This,pMsg,pulStatus) 2857 #define IAsyncRpcChannelBuffer_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) 2858 #else 2859 /*** IUnknown methods ***/ 2860 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_QueryInterface(IAsyncRpcChannelBuffer* This,REFIID riid,void **ppvObject) { 2861 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2862 } 2863 static FORCEINLINE ULONG IAsyncRpcChannelBuffer_AddRef(IAsyncRpcChannelBuffer* This) { 2864 return This->lpVtbl->AddRef(This); 2865 } 2866 static FORCEINLINE ULONG IAsyncRpcChannelBuffer_Release(IAsyncRpcChannelBuffer* This) { 2867 return This->lpVtbl->Release(This); 2868 } 2869 /*** IRpcChannelBuffer methods ***/ 2870 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetBuffer(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,REFIID riid) { 2871 return This->lpVtbl->GetBuffer(This,pMessage,riid); 2872 } 2873 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_SendReceive(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) { 2874 return This->lpVtbl->SendReceive(This,pMessage,pStatus); 2875 } 2876 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_FreeBuffer(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage) { 2877 return This->lpVtbl->FreeBuffer(This,pMessage); 2878 } 2879 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetDestCtx(IAsyncRpcChannelBuffer* This,DWORD *pdwDestContext,void **ppvDestContext) { 2880 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext); 2881 } 2882 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_IsConnected(IAsyncRpcChannelBuffer* This) { 2883 return This->lpVtbl->IsConnected(This); 2884 } 2885 /*** IRpcChannelBuffer2 methods ***/ 2886 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetProtocolVersion(IAsyncRpcChannelBuffer* This,DWORD *pdwVersion) { 2887 return This->lpVtbl->GetProtocolVersion(This,pdwVersion); 2888 } 2889 /*** IAsyncRpcChannelBuffer methods ***/ 2890 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_Send(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMsg,ISynchronize *pSync,ULONG *pulStatus) { 2891 return This->lpVtbl->Send(This,pMsg,pSync,pulStatus); 2892 } 2893 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_Receive(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMsg,ULONG *pulStatus) { 2894 return This->lpVtbl->Receive(This,pMsg,pulStatus); 2895 } 2896 static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetDestCtxEx(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMsg,DWORD *pdwDestContext,void **ppvDestContext) { 2897 return This->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext); 2898 } 2899 #endif 2900 #endif 2901 2902 #endif 2903 2904 HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_Send_Proxy( 2905 IAsyncRpcChannelBuffer* This, 2906 RPCOLEMESSAGE *pMsg, 2907 ISynchronize *pSync, 2908 ULONG *pulStatus); 2909 void __RPC_STUB IAsyncRpcChannelBuffer_Send_Stub( 2910 IRpcStubBuffer* This, 2911 IRpcChannelBuffer* pRpcChannelBuffer, 2912 PRPC_MESSAGE pRpcMessage, 2913 DWORD* pdwStubPhase); 2914 HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_Receive_Proxy( 2915 IAsyncRpcChannelBuffer* This, 2916 RPCOLEMESSAGE *pMsg, 2917 ULONG *pulStatus); 2918 void __RPC_STUB IAsyncRpcChannelBuffer_Receive_Stub( 2919 IRpcStubBuffer* This, 2920 IRpcChannelBuffer* pRpcChannelBuffer, 2921 PRPC_MESSAGE pRpcMessage, 2922 DWORD* pdwStubPhase); 2923 HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_GetDestCtxEx_Proxy( 2924 IAsyncRpcChannelBuffer* This, 2925 RPCOLEMESSAGE *pMsg, 2926 DWORD *pdwDestContext, 2927 void **ppvDestContext); 2928 void __RPC_STUB IAsyncRpcChannelBuffer_GetDestCtxEx_Stub( 2929 IRpcStubBuffer* This, 2930 IRpcChannelBuffer* pRpcChannelBuffer, 2931 PRPC_MESSAGE pRpcMessage, 2932 DWORD* pdwStubPhase); 2933 2934 #endif /* __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ */ 2935 2936 2937 /***************************************************************************** 2938 * IRpcChannelBuffer3 interface 2939 */ 2940 #ifndef __IRpcChannelBuffer3_INTERFACE_DEFINED__ 2941 #define __IRpcChannelBuffer3_INTERFACE_DEFINED__ 2942 2943 DEFINE_GUID(IID_IRpcChannelBuffer3, 0x25b15600, 0x0115, 0x11d0, 0xbf,0x0d, 0x00,0xaa,0x00,0xb8,0xdf,0xd2); 2944 #if defined(__cplusplus) && !defined(CINTERFACE) 2945 MIDL_INTERFACE("25b15600-0115-11d0-bf0d-00aa00b8dfd2") 2946 IRpcChannelBuffer3 : public IRpcChannelBuffer2 2947 { 2948 virtual HRESULT STDMETHODCALLTYPE Send( 2949 RPCOLEMESSAGE *pMsg, 2950 ULONG *pulStatus) = 0; 2951 2952 virtual HRESULT STDMETHODCALLTYPE Receive( 2953 RPCOLEMESSAGE *pMsg, 2954 ULONG ulSize, 2955 ULONG *pulStatus) = 0; 2956 2957 virtual HRESULT STDMETHODCALLTYPE Cancel( 2958 RPCOLEMESSAGE *pMsg) = 0; 2959 2960 virtual HRESULT STDMETHODCALLTYPE GetCallContext( 2961 RPCOLEMESSAGE *pMsg, 2962 REFIID riid, 2963 void **pInterface) = 0; 2964 2965 virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx( 2966 RPCOLEMESSAGE *pMsg, 2967 DWORD *pdwDestContext, 2968 void **ppvDestContext) = 0; 2969 2970 virtual HRESULT STDMETHODCALLTYPE GetState( 2971 RPCOLEMESSAGE *pMsg, 2972 DWORD *pState) = 0; 2973 2974 virtual HRESULT STDMETHODCALLTYPE RegisterAsync( 2975 RPCOLEMESSAGE *pMsg, 2976 IAsyncManager *pAsyncMgr) = 0; 2977 2978 }; 2979 #ifdef __CRT_UUID_DECL 2980 __CRT_UUID_DECL(IRpcChannelBuffer3, 0x25b15600, 0x0115, 0x11d0, 0xbf,0x0d, 0x00,0xaa,0x00,0xb8,0xdf,0xd2) 2981 #endif 2982 #else 2983 typedef struct IRpcChannelBuffer3Vtbl { 2984 BEGIN_INTERFACE 2985 2986 /*** IUnknown methods ***/ 2987 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2988 IRpcChannelBuffer3* This, 2989 REFIID riid, 2990 void **ppvObject); 2991 2992 ULONG (STDMETHODCALLTYPE *AddRef)( 2993 IRpcChannelBuffer3* This); 2994 2995 ULONG (STDMETHODCALLTYPE *Release)( 2996 IRpcChannelBuffer3* This); 2997 2998 /*** IRpcChannelBuffer methods ***/ 2999 HRESULT (STDMETHODCALLTYPE *GetBuffer)( 3000 IRpcChannelBuffer3* This, 3001 RPCOLEMESSAGE *pMessage, 3002 REFIID riid); 3003 3004 HRESULT (STDMETHODCALLTYPE *SendReceive)( 3005 IRpcChannelBuffer3* This, 3006 RPCOLEMESSAGE *pMessage, 3007 ULONG *pStatus); 3008 3009 HRESULT (STDMETHODCALLTYPE *FreeBuffer)( 3010 IRpcChannelBuffer3* This, 3011 RPCOLEMESSAGE *pMessage); 3012 3013 HRESULT (STDMETHODCALLTYPE *GetDestCtx)( 3014 IRpcChannelBuffer3* This, 3015 DWORD *pdwDestContext, 3016 void **ppvDestContext); 3017 3018 HRESULT (STDMETHODCALLTYPE *IsConnected)( 3019 IRpcChannelBuffer3* This); 3020 3021 /*** IRpcChannelBuffer2 methods ***/ 3022 HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)( 3023 IRpcChannelBuffer3* This, 3024 DWORD *pdwVersion); 3025 3026 /*** IRpcChannelBuffer3 methods ***/ 3027 HRESULT (STDMETHODCALLTYPE *Send)( 3028 IRpcChannelBuffer3* This, 3029 RPCOLEMESSAGE *pMsg, 3030 ULONG *pulStatus); 3031 3032 HRESULT (STDMETHODCALLTYPE *Receive)( 3033 IRpcChannelBuffer3* This, 3034 RPCOLEMESSAGE *pMsg, 3035 ULONG ulSize, 3036 ULONG *pulStatus); 3037 3038 HRESULT (STDMETHODCALLTYPE *Cancel)( 3039 IRpcChannelBuffer3* This, 3040 RPCOLEMESSAGE *pMsg); 3041 3042 HRESULT (STDMETHODCALLTYPE *GetCallContext)( 3043 IRpcChannelBuffer3* This, 3044 RPCOLEMESSAGE *pMsg, 3045 REFIID riid, 3046 void **pInterface); 3047 3048 HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)( 3049 IRpcChannelBuffer3* This, 3050 RPCOLEMESSAGE *pMsg, 3051 DWORD *pdwDestContext, 3052 void **ppvDestContext); 3053 3054 HRESULT (STDMETHODCALLTYPE *GetState)( 3055 IRpcChannelBuffer3* This, 3056 RPCOLEMESSAGE *pMsg, 3057 DWORD *pState); 3058 3059 HRESULT (STDMETHODCALLTYPE *RegisterAsync)( 3060 IRpcChannelBuffer3* This, 3061 RPCOLEMESSAGE *pMsg, 3062 IAsyncManager *pAsyncMgr); 3063 3064 END_INTERFACE 3065 } IRpcChannelBuffer3Vtbl; 3066 interface IRpcChannelBuffer3 { 3067 CONST_VTBL IRpcChannelBuffer3Vtbl* lpVtbl; 3068 }; 3069 3070 #ifdef COBJMACROS 3071 #ifndef WIDL_C_INLINE_WRAPPERS 3072 /*** IUnknown methods ***/ 3073 #define IRpcChannelBuffer3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3074 #define IRpcChannelBuffer3_AddRef(This) (This)->lpVtbl->AddRef(This) 3075 #define IRpcChannelBuffer3_Release(This) (This)->lpVtbl->Release(This) 3076 /*** IRpcChannelBuffer methods ***/ 3077 #define IRpcChannelBuffer3_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) 3078 #define IRpcChannelBuffer3_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) 3079 #define IRpcChannelBuffer3_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) 3080 #define IRpcChannelBuffer3_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) 3081 #define IRpcChannelBuffer3_IsConnected(This) (This)->lpVtbl->IsConnected(This) 3082 /*** IRpcChannelBuffer2 methods ***/ 3083 #define IRpcChannelBuffer3_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion) 3084 /*** IRpcChannelBuffer3 methods ***/ 3085 #define IRpcChannelBuffer3_Send(This,pMsg,pulStatus) (This)->lpVtbl->Send(This,pMsg,pulStatus) 3086 #define IRpcChannelBuffer3_Receive(This,pMsg,ulSize,pulStatus) (This)->lpVtbl->Receive(This,pMsg,ulSize,pulStatus) 3087 #define IRpcChannelBuffer3_Cancel(This,pMsg) (This)->lpVtbl->Cancel(This,pMsg) 3088 #define IRpcChannelBuffer3_GetCallContext(This,pMsg,riid,pInterface) (This)->lpVtbl->GetCallContext(This,pMsg,riid,pInterface) 3089 #define IRpcChannelBuffer3_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) 3090 #define IRpcChannelBuffer3_GetState(This,pMsg,pState) (This)->lpVtbl->GetState(This,pMsg,pState) 3091 #define IRpcChannelBuffer3_RegisterAsync(This,pMsg,pAsyncMgr) (This)->lpVtbl->RegisterAsync(This,pMsg,pAsyncMgr) 3092 #else 3093 /*** IUnknown methods ***/ 3094 static FORCEINLINE HRESULT IRpcChannelBuffer3_QueryInterface(IRpcChannelBuffer3* This,REFIID riid,void **ppvObject) { 3095 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3096 } 3097 static FORCEINLINE ULONG IRpcChannelBuffer3_AddRef(IRpcChannelBuffer3* This) { 3098 return This->lpVtbl->AddRef(This); 3099 } 3100 static FORCEINLINE ULONG IRpcChannelBuffer3_Release(IRpcChannelBuffer3* This) { 3101 return This->lpVtbl->Release(This); 3102 } 3103 /*** IRpcChannelBuffer methods ***/ 3104 static FORCEINLINE HRESULT IRpcChannelBuffer3_GetBuffer(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMessage,REFIID riid) { 3105 return This->lpVtbl->GetBuffer(This,pMessage,riid); 3106 } 3107 static FORCEINLINE HRESULT IRpcChannelBuffer3_SendReceive(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) { 3108 return This->lpVtbl->SendReceive(This,pMessage,pStatus); 3109 } 3110 static FORCEINLINE HRESULT IRpcChannelBuffer3_FreeBuffer(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMessage) { 3111 return This->lpVtbl->FreeBuffer(This,pMessage); 3112 } 3113 static FORCEINLINE HRESULT IRpcChannelBuffer3_GetDestCtx(IRpcChannelBuffer3* This,DWORD *pdwDestContext,void **ppvDestContext) { 3114 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext); 3115 } 3116 static FORCEINLINE HRESULT IRpcChannelBuffer3_IsConnected(IRpcChannelBuffer3* This) { 3117 return This->lpVtbl->IsConnected(This); 3118 } 3119 /*** IRpcChannelBuffer2 methods ***/ 3120 static FORCEINLINE HRESULT IRpcChannelBuffer3_GetProtocolVersion(IRpcChannelBuffer3* This,DWORD *pdwVersion) { 3121 return This->lpVtbl->GetProtocolVersion(This,pdwVersion); 3122 } 3123 /*** IRpcChannelBuffer3 methods ***/ 3124 static FORCEINLINE HRESULT IRpcChannelBuffer3_Send(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,ULONG *pulStatus) { 3125 return This->lpVtbl->Send(This,pMsg,pulStatus); 3126 } 3127 static FORCEINLINE HRESULT IRpcChannelBuffer3_Receive(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,ULONG ulSize,ULONG *pulStatus) { 3128 return This->lpVtbl->Receive(This,pMsg,ulSize,pulStatus); 3129 } 3130 static FORCEINLINE HRESULT IRpcChannelBuffer3_Cancel(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg) { 3131 return This->lpVtbl->Cancel(This,pMsg); 3132 } 3133 static FORCEINLINE HRESULT IRpcChannelBuffer3_GetCallContext(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,REFIID riid,void **pInterface) { 3134 return This->lpVtbl->GetCallContext(This,pMsg,riid,pInterface); 3135 } 3136 static FORCEINLINE HRESULT IRpcChannelBuffer3_GetDestCtxEx(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,DWORD *pdwDestContext,void **ppvDestContext) { 3137 return This->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext); 3138 } 3139 static FORCEINLINE HRESULT IRpcChannelBuffer3_GetState(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,DWORD *pState) { 3140 return This->lpVtbl->GetState(This,pMsg,pState); 3141 } 3142 static FORCEINLINE HRESULT IRpcChannelBuffer3_RegisterAsync(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,IAsyncManager *pAsyncMgr) { 3143 return This->lpVtbl->RegisterAsync(This,pMsg,pAsyncMgr); 3144 } 3145 #endif 3146 #endif 3147 3148 #endif 3149 3150 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Send_Proxy( 3151 IRpcChannelBuffer3* This, 3152 RPCOLEMESSAGE *pMsg, 3153 ULONG *pulStatus); 3154 void __RPC_STUB IRpcChannelBuffer3_Send_Stub( 3155 IRpcStubBuffer* This, 3156 IRpcChannelBuffer* pRpcChannelBuffer, 3157 PRPC_MESSAGE pRpcMessage, 3158 DWORD* pdwStubPhase); 3159 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Receive_Proxy( 3160 IRpcChannelBuffer3* This, 3161 RPCOLEMESSAGE *pMsg, 3162 ULONG ulSize, 3163 ULONG *pulStatus); 3164 void __RPC_STUB IRpcChannelBuffer3_Receive_Stub( 3165 IRpcStubBuffer* This, 3166 IRpcChannelBuffer* pRpcChannelBuffer, 3167 PRPC_MESSAGE pRpcMessage, 3168 DWORD* pdwStubPhase); 3169 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Cancel_Proxy( 3170 IRpcChannelBuffer3* This, 3171 RPCOLEMESSAGE *pMsg); 3172 void __RPC_STUB IRpcChannelBuffer3_Cancel_Stub( 3173 IRpcStubBuffer* This, 3174 IRpcChannelBuffer* pRpcChannelBuffer, 3175 PRPC_MESSAGE pRpcMessage, 3176 DWORD* pdwStubPhase); 3177 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetCallContext_Proxy( 3178 IRpcChannelBuffer3* This, 3179 RPCOLEMESSAGE *pMsg, 3180 REFIID riid, 3181 void **pInterface); 3182 void __RPC_STUB IRpcChannelBuffer3_GetCallContext_Stub( 3183 IRpcStubBuffer* This, 3184 IRpcChannelBuffer* pRpcChannelBuffer, 3185 PRPC_MESSAGE pRpcMessage, 3186 DWORD* pdwStubPhase); 3187 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetDestCtxEx_Proxy( 3188 IRpcChannelBuffer3* This, 3189 RPCOLEMESSAGE *pMsg, 3190 DWORD *pdwDestContext, 3191 void **ppvDestContext); 3192 void __RPC_STUB IRpcChannelBuffer3_GetDestCtxEx_Stub( 3193 IRpcStubBuffer* This, 3194 IRpcChannelBuffer* pRpcChannelBuffer, 3195 PRPC_MESSAGE pRpcMessage, 3196 DWORD* pdwStubPhase); 3197 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetState_Proxy( 3198 IRpcChannelBuffer3* This, 3199 RPCOLEMESSAGE *pMsg, 3200 DWORD *pState); 3201 void __RPC_STUB IRpcChannelBuffer3_GetState_Stub( 3202 IRpcStubBuffer* This, 3203 IRpcChannelBuffer* pRpcChannelBuffer, 3204 PRPC_MESSAGE pRpcMessage, 3205 DWORD* pdwStubPhase); 3206 HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_RegisterAsync_Proxy( 3207 IRpcChannelBuffer3* This, 3208 RPCOLEMESSAGE *pMsg, 3209 IAsyncManager *pAsyncMgr); 3210 void __RPC_STUB IRpcChannelBuffer3_RegisterAsync_Stub( 3211 IRpcStubBuffer* This, 3212 IRpcChannelBuffer* pRpcChannelBuffer, 3213 PRPC_MESSAGE pRpcMessage, 3214 DWORD* pdwStubPhase); 3215 3216 #endif /* __IRpcChannelBuffer3_INTERFACE_DEFINED__ */ 3217 3218 3219 /***************************************************************************** 3220 * IRpcSyntaxNegotiate interface 3221 */ 3222 #ifndef __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ 3223 #define __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ 3224 3225 DEFINE_GUID(IID_IRpcSyntaxNegotiate, 0x58a08519, 0x24c8, 0x4935, 0xb4,0x82, 0x3f,0xd8,0x23,0x33,0x3a,0x4f); 3226 #if defined(__cplusplus) && !defined(CINTERFACE) 3227 MIDL_INTERFACE("58a08519-24c8-4935-b482-3fd823333a4f") 3228 IRpcSyntaxNegotiate : public IUnknown 3229 { 3230 virtual HRESULT STDMETHODCALLTYPE NegotiateSyntax( 3231 RPCOLEMESSAGE *pMsg) = 0; 3232 3233 }; 3234 #ifdef __CRT_UUID_DECL 3235 __CRT_UUID_DECL(IRpcSyntaxNegotiate, 0x58a08519, 0x24c8, 0x4935, 0xb4,0x82, 0x3f,0xd8,0x23,0x33,0x3a,0x4f) 3236 #endif 3237 #else 3238 typedef struct IRpcSyntaxNegotiateVtbl { 3239 BEGIN_INTERFACE 3240 3241 /*** IUnknown methods ***/ 3242 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3243 IRpcSyntaxNegotiate* This, 3244 REFIID riid, 3245 void **ppvObject); 3246 3247 ULONG (STDMETHODCALLTYPE *AddRef)( 3248 IRpcSyntaxNegotiate* This); 3249 3250 ULONG (STDMETHODCALLTYPE *Release)( 3251 IRpcSyntaxNegotiate* This); 3252 3253 /*** IRpcSyntaxNegotiate methods ***/ 3254 HRESULT (STDMETHODCALLTYPE *NegotiateSyntax)( 3255 IRpcSyntaxNegotiate* This, 3256 RPCOLEMESSAGE *pMsg); 3257 3258 END_INTERFACE 3259 } IRpcSyntaxNegotiateVtbl; 3260 interface IRpcSyntaxNegotiate { 3261 CONST_VTBL IRpcSyntaxNegotiateVtbl* lpVtbl; 3262 }; 3263 3264 #ifdef COBJMACROS 3265 #ifndef WIDL_C_INLINE_WRAPPERS 3266 /*** IUnknown methods ***/ 3267 #define IRpcSyntaxNegotiate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3268 #define IRpcSyntaxNegotiate_AddRef(This) (This)->lpVtbl->AddRef(This) 3269 #define IRpcSyntaxNegotiate_Release(This) (This)->lpVtbl->Release(This) 3270 /*** IRpcSyntaxNegotiate methods ***/ 3271 #define IRpcSyntaxNegotiate_NegotiateSyntax(This,pMsg) (This)->lpVtbl->NegotiateSyntax(This,pMsg) 3272 #else 3273 /*** IUnknown methods ***/ 3274 static FORCEINLINE HRESULT IRpcSyntaxNegotiate_QueryInterface(IRpcSyntaxNegotiate* This,REFIID riid,void **ppvObject) { 3275 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3276 } 3277 static FORCEINLINE ULONG IRpcSyntaxNegotiate_AddRef(IRpcSyntaxNegotiate* This) { 3278 return This->lpVtbl->AddRef(This); 3279 } 3280 static FORCEINLINE ULONG IRpcSyntaxNegotiate_Release(IRpcSyntaxNegotiate* This) { 3281 return This->lpVtbl->Release(This); 3282 } 3283 /*** IRpcSyntaxNegotiate methods ***/ 3284 static FORCEINLINE HRESULT IRpcSyntaxNegotiate_NegotiateSyntax(IRpcSyntaxNegotiate* This,RPCOLEMESSAGE *pMsg) { 3285 return This->lpVtbl->NegotiateSyntax(This,pMsg); 3286 } 3287 #endif 3288 #endif 3289 3290 #endif 3291 3292 HRESULT STDMETHODCALLTYPE IRpcSyntaxNegotiate_NegotiateSyntax_Proxy( 3293 IRpcSyntaxNegotiate* This, 3294 RPCOLEMESSAGE *pMsg); 3295 void __RPC_STUB IRpcSyntaxNegotiate_NegotiateSyntax_Stub( 3296 IRpcStubBuffer* This, 3297 IRpcChannelBuffer* pRpcChannelBuffer, 3298 PRPC_MESSAGE pRpcMessage, 3299 DWORD* pdwStubPhase); 3300 3301 #endif /* __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ */ 3302 3303 3304 /***************************************************************************** 3305 * IRpcProxyBuffer interface 3306 */ 3307 #ifndef __IRpcProxyBuffer_INTERFACE_DEFINED__ 3308 #define __IRpcProxyBuffer_INTERFACE_DEFINED__ 3309 3310 DEFINE_GUID(IID_IRpcProxyBuffer, 0xd5f56a34, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); 3311 #if defined(__cplusplus) && !defined(CINTERFACE) 3312 MIDL_INTERFACE("d5f56a34-593b-101a-b569-08002b2dbf7a") 3313 IRpcProxyBuffer : public IUnknown 3314 { 3315 virtual HRESULT STDMETHODCALLTYPE Connect( 3316 IRpcChannelBuffer *pRpcChannelBuffer) = 0; 3317 3318 virtual void STDMETHODCALLTYPE Disconnect( 3319 ) = 0; 3320 3321 }; 3322 #ifdef __CRT_UUID_DECL 3323 __CRT_UUID_DECL(IRpcProxyBuffer, 0xd5f56a34, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a) 3324 #endif 3325 #else 3326 typedef struct IRpcProxyBufferVtbl { 3327 BEGIN_INTERFACE 3328 3329 /*** IUnknown methods ***/ 3330 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3331 IRpcProxyBuffer* This, 3332 REFIID riid, 3333 void **ppvObject); 3334 3335 ULONG (STDMETHODCALLTYPE *AddRef)( 3336 IRpcProxyBuffer* This); 3337 3338 ULONG (STDMETHODCALLTYPE *Release)( 3339 IRpcProxyBuffer* This); 3340 3341 /*** IRpcProxyBuffer methods ***/ 3342 HRESULT (STDMETHODCALLTYPE *Connect)( 3343 IRpcProxyBuffer* This, 3344 IRpcChannelBuffer *pRpcChannelBuffer); 3345 3346 void (STDMETHODCALLTYPE *Disconnect)( 3347 IRpcProxyBuffer* This); 3348 3349 END_INTERFACE 3350 } IRpcProxyBufferVtbl; 3351 interface IRpcProxyBuffer { 3352 CONST_VTBL IRpcProxyBufferVtbl* lpVtbl; 3353 }; 3354 3355 #ifdef COBJMACROS 3356 #ifndef WIDL_C_INLINE_WRAPPERS 3357 /*** IUnknown methods ***/ 3358 #define IRpcProxyBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3359 #define IRpcProxyBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) 3360 #define IRpcProxyBuffer_Release(This) (This)->lpVtbl->Release(This) 3361 /*** IRpcProxyBuffer methods ***/ 3362 #define IRpcProxyBuffer_Connect(This,pRpcChannelBuffer) (This)->lpVtbl->Connect(This,pRpcChannelBuffer) 3363 #define IRpcProxyBuffer_Disconnect(This) (This)->lpVtbl->Disconnect(This) 3364 #else 3365 /*** IUnknown methods ***/ 3366 static FORCEINLINE HRESULT IRpcProxyBuffer_QueryInterface(IRpcProxyBuffer* This,REFIID riid,void **ppvObject) { 3367 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3368 } 3369 static FORCEINLINE ULONG IRpcProxyBuffer_AddRef(IRpcProxyBuffer* This) { 3370 return This->lpVtbl->AddRef(This); 3371 } 3372 static FORCEINLINE ULONG IRpcProxyBuffer_Release(IRpcProxyBuffer* This) { 3373 return This->lpVtbl->Release(This); 3374 } 3375 /*** IRpcProxyBuffer methods ***/ 3376 static FORCEINLINE HRESULT IRpcProxyBuffer_Connect(IRpcProxyBuffer* This,IRpcChannelBuffer *pRpcChannelBuffer) { 3377 return This->lpVtbl->Connect(This,pRpcChannelBuffer); 3378 } 3379 static FORCEINLINE void IRpcProxyBuffer_Disconnect(IRpcProxyBuffer* This) { 3380 This->lpVtbl->Disconnect(This); 3381 } 3382 #endif 3383 #endif 3384 3385 #endif 3386 3387 HRESULT STDMETHODCALLTYPE IRpcProxyBuffer_Connect_Proxy( 3388 IRpcProxyBuffer* This, 3389 IRpcChannelBuffer *pRpcChannelBuffer); 3390 void __RPC_STUB IRpcProxyBuffer_Connect_Stub( 3391 IRpcStubBuffer* This, 3392 IRpcChannelBuffer* pRpcChannelBuffer, 3393 PRPC_MESSAGE pRpcMessage, 3394 DWORD* pdwStubPhase); 3395 void STDMETHODCALLTYPE IRpcProxyBuffer_Disconnect_Proxy( 3396 IRpcProxyBuffer* This); 3397 void __RPC_STUB IRpcProxyBuffer_Disconnect_Stub( 3398 IRpcStubBuffer* This, 3399 IRpcChannelBuffer* pRpcChannelBuffer, 3400 PRPC_MESSAGE pRpcMessage, 3401 DWORD* pdwStubPhase); 3402 3403 #endif /* __IRpcProxyBuffer_INTERFACE_DEFINED__ */ 3404 3405 #endif 3406 3407 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 3408 /***************************************************************************** 3409 * IRpcStubBuffer interface 3410 */ 3411 #ifndef __IRpcStubBuffer_INTERFACE_DEFINED__ 3412 #define __IRpcStubBuffer_INTERFACE_DEFINED__ 3413 3414 DEFINE_GUID(IID_IRpcStubBuffer, 0xd5f56afc, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); 3415 #if defined(__cplusplus) && !defined(CINTERFACE) 3416 MIDL_INTERFACE("d5f56afc-593b-101a-b569-08002b2dbf7a") 3417 IRpcStubBuffer : public IUnknown 3418 { 3419 virtual HRESULT STDMETHODCALLTYPE Connect( 3420 IUnknown *pUnkServer) = 0; 3421 3422 virtual void STDMETHODCALLTYPE Disconnect( 3423 ) = 0; 3424 3425 virtual HRESULT STDMETHODCALLTYPE Invoke( 3426 RPCOLEMESSAGE *_prpcmsg, 3427 IRpcChannelBuffer *_pRpcChannelBuffer) = 0; 3428 3429 virtual IRpcStubBuffer * STDMETHODCALLTYPE IsIIDSupported( 3430 REFIID riid) = 0; 3431 3432 virtual ULONG STDMETHODCALLTYPE CountRefs( 3433 ) = 0; 3434 3435 virtual HRESULT STDMETHODCALLTYPE DebugServerQueryInterface( 3436 void **ppv) = 0; 3437 3438 virtual void STDMETHODCALLTYPE DebugServerRelease( 3439 void *pv) = 0; 3440 3441 }; 3442 #ifdef __CRT_UUID_DECL 3443 __CRT_UUID_DECL(IRpcStubBuffer, 0xd5f56afc, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a) 3444 #endif 3445 #else 3446 typedef struct IRpcStubBufferVtbl { 3447 BEGIN_INTERFACE 3448 3449 /*** IUnknown methods ***/ 3450 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3451 IRpcStubBuffer* This, 3452 REFIID riid, 3453 void **ppvObject); 3454 3455 ULONG (STDMETHODCALLTYPE *AddRef)( 3456 IRpcStubBuffer* This); 3457 3458 ULONG (STDMETHODCALLTYPE *Release)( 3459 IRpcStubBuffer* This); 3460 3461 /*** IRpcStubBuffer methods ***/ 3462 HRESULT (STDMETHODCALLTYPE *Connect)( 3463 IRpcStubBuffer* This, 3464 IUnknown *pUnkServer); 3465 3466 void (STDMETHODCALLTYPE *Disconnect)( 3467 IRpcStubBuffer* This); 3468 3469 HRESULT (STDMETHODCALLTYPE *Invoke)( 3470 IRpcStubBuffer* This, 3471 RPCOLEMESSAGE *_prpcmsg, 3472 IRpcChannelBuffer *_pRpcChannelBuffer); 3473 3474 IRpcStubBuffer * (STDMETHODCALLTYPE *IsIIDSupported)( 3475 IRpcStubBuffer* This, 3476 REFIID riid); 3477 3478 ULONG (STDMETHODCALLTYPE *CountRefs)( 3479 IRpcStubBuffer* This); 3480 3481 HRESULT (STDMETHODCALLTYPE *DebugServerQueryInterface)( 3482 IRpcStubBuffer* This, 3483 void **ppv); 3484 3485 void (STDMETHODCALLTYPE *DebugServerRelease)( 3486 IRpcStubBuffer* This, 3487 void *pv); 3488 3489 END_INTERFACE 3490 } IRpcStubBufferVtbl; 3491 interface IRpcStubBuffer { 3492 CONST_VTBL IRpcStubBufferVtbl* lpVtbl; 3493 }; 3494 3495 #ifdef COBJMACROS 3496 #ifndef WIDL_C_INLINE_WRAPPERS 3497 /*** IUnknown methods ***/ 3498 #define IRpcStubBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3499 #define IRpcStubBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) 3500 #define IRpcStubBuffer_Release(This) (This)->lpVtbl->Release(This) 3501 /*** IRpcStubBuffer methods ***/ 3502 #define IRpcStubBuffer_Connect(This,pUnkServer) (This)->lpVtbl->Connect(This,pUnkServer) 3503 #define IRpcStubBuffer_Disconnect(This) (This)->lpVtbl->Disconnect(This) 3504 #define IRpcStubBuffer_Invoke(This,_prpcmsg,_pRpcChannelBuffer) (This)->lpVtbl->Invoke(This,_prpcmsg,_pRpcChannelBuffer) 3505 #define IRpcStubBuffer_IsIIDSupported(This,riid) (This)->lpVtbl->IsIIDSupported(This,riid) 3506 #define IRpcStubBuffer_CountRefs(This) (This)->lpVtbl->CountRefs(This) 3507 #define IRpcStubBuffer_DebugServerQueryInterface(This,ppv) (This)->lpVtbl->DebugServerQueryInterface(This,ppv) 3508 #define IRpcStubBuffer_DebugServerRelease(This,pv) (This)->lpVtbl->DebugServerRelease(This,pv) 3509 #else 3510 /*** IUnknown methods ***/ 3511 static FORCEINLINE HRESULT IRpcStubBuffer_QueryInterface(IRpcStubBuffer* This,REFIID riid,void **ppvObject) { 3512 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3513 } 3514 static FORCEINLINE ULONG IRpcStubBuffer_AddRef(IRpcStubBuffer* This) { 3515 return This->lpVtbl->AddRef(This); 3516 } 3517 static FORCEINLINE ULONG IRpcStubBuffer_Release(IRpcStubBuffer* This) { 3518 return This->lpVtbl->Release(This); 3519 } 3520 /*** IRpcStubBuffer methods ***/ 3521 static FORCEINLINE HRESULT IRpcStubBuffer_Connect(IRpcStubBuffer* This,IUnknown *pUnkServer) { 3522 return This->lpVtbl->Connect(This,pUnkServer); 3523 } 3524 static FORCEINLINE void IRpcStubBuffer_Disconnect(IRpcStubBuffer* This) { 3525 This->lpVtbl->Disconnect(This); 3526 } 3527 static FORCEINLINE HRESULT IRpcStubBuffer_Invoke(IRpcStubBuffer* This,RPCOLEMESSAGE *_prpcmsg,IRpcChannelBuffer *_pRpcChannelBuffer) { 3528 return This->lpVtbl->Invoke(This,_prpcmsg,_pRpcChannelBuffer); 3529 } 3530 static FORCEINLINE IRpcStubBuffer * IRpcStubBuffer_IsIIDSupported(IRpcStubBuffer* This,REFIID riid) { 3531 return This->lpVtbl->IsIIDSupported(This,riid); 3532 } 3533 static FORCEINLINE ULONG IRpcStubBuffer_CountRefs(IRpcStubBuffer* This) { 3534 return This->lpVtbl->CountRefs(This); 3535 } 3536 static FORCEINLINE HRESULT IRpcStubBuffer_DebugServerQueryInterface(IRpcStubBuffer* This,void **ppv) { 3537 return This->lpVtbl->DebugServerQueryInterface(This,ppv); 3538 } 3539 static FORCEINLINE void IRpcStubBuffer_DebugServerRelease(IRpcStubBuffer* This,void *pv) { 3540 This->lpVtbl->DebugServerRelease(This,pv); 3541 } 3542 #endif 3543 #endif 3544 3545 #endif 3546 3547 HRESULT STDMETHODCALLTYPE IRpcStubBuffer_Connect_Proxy( 3548 IRpcStubBuffer* This, 3549 IUnknown *pUnkServer); 3550 void __RPC_STUB IRpcStubBuffer_Connect_Stub( 3551 IRpcStubBuffer* This, 3552 IRpcChannelBuffer* pRpcChannelBuffer, 3553 PRPC_MESSAGE pRpcMessage, 3554 DWORD* pdwStubPhase); 3555 void STDMETHODCALLTYPE IRpcStubBuffer_Disconnect_Proxy( 3556 IRpcStubBuffer* This); 3557 void __RPC_STUB IRpcStubBuffer_Disconnect_Stub( 3558 IRpcStubBuffer* This, 3559 IRpcChannelBuffer* pRpcChannelBuffer, 3560 PRPC_MESSAGE pRpcMessage, 3561 DWORD* pdwStubPhase); 3562 HRESULT STDMETHODCALLTYPE IRpcStubBuffer_Invoke_Proxy( 3563 IRpcStubBuffer* This, 3564 RPCOLEMESSAGE *_prpcmsg, 3565 IRpcChannelBuffer *_pRpcChannelBuffer); 3566 void __RPC_STUB IRpcStubBuffer_Invoke_Stub( 3567 IRpcStubBuffer* This, 3568 IRpcChannelBuffer* pRpcChannelBuffer, 3569 PRPC_MESSAGE pRpcMessage, 3570 DWORD* pdwStubPhase); 3571 IRpcStubBuffer * STDMETHODCALLTYPE IRpcStubBuffer_IsIIDSupported_Proxy( 3572 IRpcStubBuffer* This, 3573 REFIID riid); 3574 void __RPC_STUB IRpcStubBuffer_IsIIDSupported_Stub( 3575 IRpcStubBuffer* This, 3576 IRpcChannelBuffer* pRpcChannelBuffer, 3577 PRPC_MESSAGE pRpcMessage, 3578 DWORD* pdwStubPhase); 3579 ULONG STDMETHODCALLTYPE IRpcStubBuffer_CountRefs_Proxy( 3580 IRpcStubBuffer* This); 3581 void __RPC_STUB IRpcStubBuffer_CountRefs_Stub( 3582 IRpcStubBuffer* This, 3583 IRpcChannelBuffer* pRpcChannelBuffer, 3584 PRPC_MESSAGE pRpcMessage, 3585 DWORD* pdwStubPhase); 3586 HRESULT STDMETHODCALLTYPE IRpcStubBuffer_DebugServerQueryInterface_Proxy( 3587 IRpcStubBuffer* This, 3588 void **ppv); 3589 void __RPC_STUB IRpcStubBuffer_DebugServerQueryInterface_Stub( 3590 IRpcStubBuffer* This, 3591 IRpcChannelBuffer* pRpcChannelBuffer, 3592 PRPC_MESSAGE pRpcMessage, 3593 DWORD* pdwStubPhase); 3594 void STDMETHODCALLTYPE IRpcStubBuffer_DebugServerRelease_Proxy( 3595 IRpcStubBuffer* This, 3596 void *pv); 3597 void __RPC_STUB IRpcStubBuffer_DebugServerRelease_Stub( 3598 IRpcStubBuffer* This, 3599 IRpcChannelBuffer* pRpcChannelBuffer, 3600 PRPC_MESSAGE pRpcMessage, 3601 DWORD* pdwStubPhase); 3602 3603 #endif /* __IRpcStubBuffer_INTERFACE_DEFINED__ */ 3604 3605 3606 /***************************************************************************** 3607 * IPSFactoryBuffer interface 3608 */ 3609 #ifndef __IPSFactoryBuffer_INTERFACE_DEFINED__ 3610 #define __IPSFactoryBuffer_INTERFACE_DEFINED__ 3611 3612 DEFINE_GUID(IID_IPSFactoryBuffer, 0xd5f569d0, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); 3613 #if defined(__cplusplus) && !defined(CINTERFACE) 3614 MIDL_INTERFACE("d5f569d0-593b-101a-b569-08002b2dbf7a") 3615 IPSFactoryBuffer : public IUnknown 3616 { 3617 virtual HRESULT STDMETHODCALLTYPE CreateProxy( 3618 IUnknown *pUnkOuter, 3619 REFIID riid, 3620 IRpcProxyBuffer **ppProxy, 3621 void **ppv) = 0; 3622 3623 virtual HRESULT STDMETHODCALLTYPE CreateStub( 3624 REFIID riid, 3625 IUnknown *pUnkServer, 3626 IRpcStubBuffer **ppStub) = 0; 3627 3628 }; 3629 #ifdef __CRT_UUID_DECL 3630 __CRT_UUID_DECL(IPSFactoryBuffer, 0xd5f569d0, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a) 3631 #endif 3632 #else 3633 typedef struct IPSFactoryBufferVtbl { 3634 BEGIN_INTERFACE 3635 3636 /*** IUnknown methods ***/ 3637 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3638 IPSFactoryBuffer* This, 3639 REFIID riid, 3640 void **ppvObject); 3641 3642 ULONG (STDMETHODCALLTYPE *AddRef)( 3643 IPSFactoryBuffer* This); 3644 3645 ULONG (STDMETHODCALLTYPE *Release)( 3646 IPSFactoryBuffer* This); 3647 3648 /*** IPSFactoryBuffer methods ***/ 3649 HRESULT (STDMETHODCALLTYPE *CreateProxy)( 3650 IPSFactoryBuffer* This, 3651 IUnknown *pUnkOuter, 3652 REFIID riid, 3653 IRpcProxyBuffer **ppProxy, 3654 void **ppv); 3655 3656 HRESULT (STDMETHODCALLTYPE *CreateStub)( 3657 IPSFactoryBuffer* This, 3658 REFIID riid, 3659 IUnknown *pUnkServer, 3660 IRpcStubBuffer **ppStub); 3661 3662 END_INTERFACE 3663 } IPSFactoryBufferVtbl; 3664 interface IPSFactoryBuffer { 3665 CONST_VTBL IPSFactoryBufferVtbl* lpVtbl; 3666 }; 3667 3668 #ifdef COBJMACROS 3669 #ifndef WIDL_C_INLINE_WRAPPERS 3670 /*** IUnknown methods ***/ 3671 #define IPSFactoryBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3672 #define IPSFactoryBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) 3673 #define IPSFactoryBuffer_Release(This) (This)->lpVtbl->Release(This) 3674 /*** IPSFactoryBuffer methods ***/ 3675 #define IPSFactoryBuffer_CreateProxy(This,pUnkOuter,riid,ppProxy,ppv) (This)->lpVtbl->CreateProxy(This,pUnkOuter,riid,ppProxy,ppv) 3676 #define IPSFactoryBuffer_CreateStub(This,riid,pUnkServer,ppStub) (This)->lpVtbl->CreateStub(This,riid,pUnkServer,ppStub) 3677 #else 3678 /*** IUnknown methods ***/ 3679 static FORCEINLINE HRESULT IPSFactoryBuffer_QueryInterface(IPSFactoryBuffer* This,REFIID riid,void **ppvObject) { 3680 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3681 } 3682 static FORCEINLINE ULONG IPSFactoryBuffer_AddRef(IPSFactoryBuffer* This) { 3683 return This->lpVtbl->AddRef(This); 3684 } 3685 static FORCEINLINE ULONG IPSFactoryBuffer_Release(IPSFactoryBuffer* This) { 3686 return This->lpVtbl->Release(This); 3687 } 3688 /*** IPSFactoryBuffer methods ***/ 3689 static FORCEINLINE HRESULT IPSFactoryBuffer_CreateProxy(IPSFactoryBuffer* This,IUnknown *pUnkOuter,REFIID riid,IRpcProxyBuffer **ppProxy,void **ppv) { 3690 return This->lpVtbl->CreateProxy(This,pUnkOuter,riid,ppProxy,ppv); 3691 } 3692 static FORCEINLINE HRESULT IPSFactoryBuffer_CreateStub(IPSFactoryBuffer* This,REFIID riid,IUnknown *pUnkServer,IRpcStubBuffer **ppStub) { 3693 return This->lpVtbl->CreateStub(This,riid,pUnkServer,ppStub); 3694 } 3695 #endif 3696 #endif 3697 3698 #endif 3699 3700 HRESULT STDMETHODCALLTYPE IPSFactoryBuffer_CreateProxy_Proxy( 3701 IPSFactoryBuffer* This, 3702 IUnknown *pUnkOuter, 3703 REFIID riid, 3704 IRpcProxyBuffer **ppProxy, 3705 void **ppv); 3706 void __RPC_STUB IPSFactoryBuffer_CreateProxy_Stub( 3707 IRpcStubBuffer* This, 3708 IRpcChannelBuffer* pRpcChannelBuffer, 3709 PRPC_MESSAGE pRpcMessage, 3710 DWORD* pdwStubPhase); 3711 HRESULT STDMETHODCALLTYPE IPSFactoryBuffer_CreateStub_Proxy( 3712 IPSFactoryBuffer* This, 3713 REFIID riid, 3714 IUnknown *pUnkServer, 3715 IRpcStubBuffer **ppStub); 3716 void __RPC_STUB IPSFactoryBuffer_CreateStub_Stub( 3717 IRpcStubBuffer* This, 3718 IRpcChannelBuffer* pRpcChannelBuffer, 3719 PRPC_MESSAGE pRpcMessage, 3720 DWORD* pdwStubPhase); 3721 3722 #endif /* __IPSFactoryBuffer_INTERFACE_DEFINED__ */ 3723 3724 #endif 3725 3726 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 3727 #if (_WIN32_WINNT >= 0x0400 ) || defined(_WIN32_DCOM) 3728 typedef struct SChannelHookCallInfo { 3729 IID iid; 3730 DWORD cbSize; 3731 GUID uCausality; 3732 DWORD dwServerPid; 3733 DWORD iMethod; 3734 void *pObject; 3735 } SChannelHookCallInfo; 3736 3737 /***************************************************************************** 3738 * IChannelHook interface 3739 */ 3740 #ifndef __IChannelHook_INTERFACE_DEFINED__ 3741 #define __IChannelHook_INTERFACE_DEFINED__ 3742 3743 DEFINE_GUID(IID_IChannelHook, 0x1008c4a0, 0x7613, 0x11cf, 0x9a,0xf1, 0x00,0x20,0xaf,0x6e,0x72,0xf4); 3744 #if defined(__cplusplus) && !defined(CINTERFACE) 3745 MIDL_INTERFACE("1008c4a0-7613-11cf-9af1-0020af6e72f4") 3746 IChannelHook : public IUnknown 3747 { 3748 virtual void STDMETHODCALLTYPE ClientGetSize( 3749 REFGUID uExtent, 3750 REFIID riid, 3751 ULONG *pDataSize) = 0; 3752 3753 virtual void STDMETHODCALLTYPE ClientFillBuffer( 3754 REFGUID uExtent, 3755 REFIID riid, 3756 ULONG *pDataSize, 3757 void *pDataBuffer) = 0; 3758 3759 virtual void STDMETHODCALLTYPE ClientNotify( 3760 REFGUID uExtent, 3761 REFIID riid, 3762 ULONG cbDataSize, 3763 void *pDataBuffer, 3764 DWORD lDataRep, 3765 HRESULT hrFault) = 0; 3766 3767 virtual void STDMETHODCALLTYPE ServerNotify( 3768 REFGUID uExtent, 3769 REFIID riid, 3770 ULONG cbDataSize, 3771 void *pDataBuffer, 3772 DWORD lDataRep) = 0; 3773 3774 virtual void STDMETHODCALLTYPE ServerGetSize( 3775 REFGUID uExtent, 3776 REFIID riid, 3777 HRESULT hrFault, 3778 ULONG *pDataSize) = 0; 3779 3780 virtual void STDMETHODCALLTYPE ServerFillBuffer( 3781 REFGUID uExtent, 3782 REFIID riid, 3783 ULONG *pDataSize, 3784 void *pDataBuffer, 3785 HRESULT hrFault) = 0; 3786 3787 }; 3788 #ifdef __CRT_UUID_DECL 3789 __CRT_UUID_DECL(IChannelHook, 0x1008c4a0, 0x7613, 0x11cf, 0x9a,0xf1, 0x00,0x20,0xaf,0x6e,0x72,0xf4) 3790 #endif 3791 #else 3792 typedef struct IChannelHookVtbl { 3793 BEGIN_INTERFACE 3794 3795 /*** IUnknown methods ***/ 3796 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3797 IChannelHook* This, 3798 REFIID riid, 3799 void **ppvObject); 3800 3801 ULONG (STDMETHODCALLTYPE *AddRef)( 3802 IChannelHook* This); 3803 3804 ULONG (STDMETHODCALLTYPE *Release)( 3805 IChannelHook* This); 3806 3807 /*** IChannelHook methods ***/ 3808 void (STDMETHODCALLTYPE *ClientGetSize)( 3809 IChannelHook* This, 3810 REFGUID uExtent, 3811 REFIID riid, 3812 ULONG *pDataSize); 3813 3814 void (STDMETHODCALLTYPE *ClientFillBuffer)( 3815 IChannelHook* This, 3816 REFGUID uExtent, 3817 REFIID riid, 3818 ULONG *pDataSize, 3819 void *pDataBuffer); 3820 3821 void (STDMETHODCALLTYPE *ClientNotify)( 3822 IChannelHook* This, 3823 REFGUID uExtent, 3824 REFIID riid, 3825 ULONG cbDataSize, 3826 void *pDataBuffer, 3827 DWORD lDataRep, 3828 HRESULT hrFault); 3829 3830 void (STDMETHODCALLTYPE *ServerNotify)( 3831 IChannelHook* This, 3832 REFGUID uExtent, 3833 REFIID riid, 3834 ULONG cbDataSize, 3835 void *pDataBuffer, 3836 DWORD lDataRep); 3837 3838 void (STDMETHODCALLTYPE *ServerGetSize)( 3839 IChannelHook* This, 3840 REFGUID uExtent, 3841 REFIID riid, 3842 HRESULT hrFault, 3843 ULONG *pDataSize); 3844 3845 void (STDMETHODCALLTYPE *ServerFillBuffer)( 3846 IChannelHook* This, 3847 REFGUID uExtent, 3848 REFIID riid, 3849 ULONG *pDataSize, 3850 void *pDataBuffer, 3851 HRESULT hrFault); 3852 3853 END_INTERFACE 3854 } IChannelHookVtbl; 3855 interface IChannelHook { 3856 CONST_VTBL IChannelHookVtbl* lpVtbl; 3857 }; 3858 3859 #ifdef COBJMACROS 3860 #ifndef WIDL_C_INLINE_WRAPPERS 3861 /*** IUnknown methods ***/ 3862 #define IChannelHook_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3863 #define IChannelHook_AddRef(This) (This)->lpVtbl->AddRef(This) 3864 #define IChannelHook_Release(This) (This)->lpVtbl->Release(This) 3865 /*** IChannelHook methods ***/ 3866 #define IChannelHook_ClientGetSize(This,uExtent,riid,pDataSize) (This)->lpVtbl->ClientGetSize(This,uExtent,riid,pDataSize) 3867 #define IChannelHook_ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer) (This)->lpVtbl->ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer) 3868 #define IChannelHook_ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault) (This)->lpVtbl->ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault) 3869 #define IChannelHook_ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep) (This)->lpVtbl->ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep) 3870 #define IChannelHook_ServerGetSize(This,uExtent,riid,hrFault,pDataSize) (This)->lpVtbl->ServerGetSize(This,uExtent,riid,hrFault,pDataSize) 3871 #define IChannelHook_ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault) (This)->lpVtbl->ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault) 3872 #else 3873 /*** IUnknown methods ***/ 3874 static FORCEINLINE HRESULT IChannelHook_QueryInterface(IChannelHook* This,REFIID riid,void **ppvObject) { 3875 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3876 } 3877 static FORCEINLINE ULONG IChannelHook_AddRef(IChannelHook* This) { 3878 return This->lpVtbl->AddRef(This); 3879 } 3880 static FORCEINLINE ULONG IChannelHook_Release(IChannelHook* This) { 3881 return This->lpVtbl->Release(This); 3882 } 3883 /*** IChannelHook methods ***/ 3884 static FORCEINLINE void IChannelHook_ClientGetSize(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG *pDataSize) { 3885 This->lpVtbl->ClientGetSize(This,uExtent,riid,pDataSize); 3886 } 3887 static FORCEINLINE void IChannelHook_ClientFillBuffer(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG *pDataSize,void *pDataBuffer) { 3888 This->lpVtbl->ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer); 3889 } 3890 static FORCEINLINE void IChannelHook_ClientNotify(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG cbDataSize,void *pDataBuffer,DWORD lDataRep,HRESULT hrFault) { 3891 This->lpVtbl->ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault); 3892 } 3893 static FORCEINLINE void IChannelHook_ServerNotify(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG cbDataSize,void *pDataBuffer,DWORD lDataRep) { 3894 This->lpVtbl->ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep); 3895 } 3896 static FORCEINLINE void IChannelHook_ServerGetSize(IChannelHook* This,REFGUID uExtent,REFIID riid,HRESULT hrFault,ULONG *pDataSize) { 3897 This->lpVtbl->ServerGetSize(This,uExtent,riid,hrFault,pDataSize); 3898 } 3899 static FORCEINLINE void IChannelHook_ServerFillBuffer(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG *pDataSize,void *pDataBuffer,HRESULT hrFault) { 3900 This->lpVtbl->ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault); 3901 } 3902 #endif 3903 #endif 3904 3905 #endif 3906 3907 void STDMETHODCALLTYPE IChannelHook_ClientGetSize_Proxy( 3908 IChannelHook* This, 3909 REFGUID uExtent, 3910 REFIID riid, 3911 ULONG *pDataSize); 3912 void __RPC_STUB IChannelHook_ClientGetSize_Stub( 3913 IRpcStubBuffer* This, 3914 IRpcChannelBuffer* pRpcChannelBuffer, 3915 PRPC_MESSAGE pRpcMessage, 3916 DWORD* pdwStubPhase); 3917 void STDMETHODCALLTYPE IChannelHook_ClientFillBuffer_Proxy( 3918 IChannelHook* This, 3919 REFGUID uExtent, 3920 REFIID riid, 3921 ULONG *pDataSize, 3922 void *pDataBuffer); 3923 void __RPC_STUB IChannelHook_ClientFillBuffer_Stub( 3924 IRpcStubBuffer* This, 3925 IRpcChannelBuffer* pRpcChannelBuffer, 3926 PRPC_MESSAGE pRpcMessage, 3927 DWORD* pdwStubPhase); 3928 void STDMETHODCALLTYPE IChannelHook_ClientNotify_Proxy( 3929 IChannelHook* This, 3930 REFGUID uExtent, 3931 REFIID riid, 3932 ULONG cbDataSize, 3933 void *pDataBuffer, 3934 DWORD lDataRep, 3935 HRESULT hrFault); 3936 void __RPC_STUB IChannelHook_ClientNotify_Stub( 3937 IRpcStubBuffer* This, 3938 IRpcChannelBuffer* pRpcChannelBuffer, 3939 PRPC_MESSAGE pRpcMessage, 3940 DWORD* pdwStubPhase); 3941 void STDMETHODCALLTYPE IChannelHook_ServerNotify_Proxy( 3942 IChannelHook* This, 3943 REFGUID uExtent, 3944 REFIID riid, 3945 ULONG cbDataSize, 3946 void *pDataBuffer, 3947 DWORD lDataRep); 3948 void __RPC_STUB IChannelHook_ServerNotify_Stub( 3949 IRpcStubBuffer* This, 3950 IRpcChannelBuffer* pRpcChannelBuffer, 3951 PRPC_MESSAGE pRpcMessage, 3952 DWORD* pdwStubPhase); 3953 void STDMETHODCALLTYPE IChannelHook_ServerGetSize_Proxy( 3954 IChannelHook* This, 3955 REFGUID uExtent, 3956 REFIID riid, 3957 HRESULT hrFault, 3958 ULONG *pDataSize); 3959 void __RPC_STUB IChannelHook_ServerGetSize_Stub( 3960 IRpcStubBuffer* This, 3961 IRpcChannelBuffer* pRpcChannelBuffer, 3962 PRPC_MESSAGE pRpcMessage, 3963 DWORD* pdwStubPhase); 3964 void STDMETHODCALLTYPE IChannelHook_ServerFillBuffer_Proxy( 3965 IChannelHook* This, 3966 REFGUID uExtent, 3967 REFIID riid, 3968 ULONG *pDataSize, 3969 void *pDataBuffer, 3970 HRESULT hrFault); 3971 void __RPC_STUB IChannelHook_ServerFillBuffer_Stub( 3972 IRpcStubBuffer* This, 3973 IRpcChannelBuffer* pRpcChannelBuffer, 3974 PRPC_MESSAGE pRpcMessage, 3975 DWORD* pdwStubPhase); 3976 3977 #endif /* __IChannelHook_INTERFACE_DEFINED__ */ 3978 3979 #endif 3980 #endif 3981 3982 #if (_WIN32_WINNT >= 0x0400 ) || defined(_WIN32_DCOM) 3983 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 3984 /***************************************************************************** 3985 * IClientSecurity interface 3986 */ 3987 #ifndef __IClientSecurity_INTERFACE_DEFINED__ 3988 #define __IClientSecurity_INTERFACE_DEFINED__ 3989 3990 typedef struct tagSOLE_AUTHENTICATION_SERVICE { 3991 DWORD dwAuthnSvc; 3992 DWORD dwAuthzSvc; 3993 OLECHAR *pPrincipalName; 3994 HRESULT hr; 3995 } SOLE_AUTHENTICATION_SERVICE; 3996 3997 typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE; 3998 3999 typedef enum tagEOLE_AUTHENTICATION_CAPABILITIES { 4000 EOAC_NONE = 0x0, 4001 EOAC_MUTUAL_AUTH = 0x1, 4002 EOAC_STATIC_CLOAKING = 0x20, 4003 EOAC_DYNAMIC_CLOAKING = 0x40, 4004 EOAC_ANY_AUTHORITY = 0x80, 4005 EOAC_MAKE_FULLSIC = 0x100, 4006 EOAC_DEFAULT = 0x800, 4007 EOAC_SECURE_REFS = 0x2, 4008 EOAC_ACCESS_CONTROL = 0x4, 4009 EOAC_APPID = 0x8, 4010 EOAC_DYNAMIC = 0x10, 4011 EOAC_REQUIRE_FULLSIC = 0x200, 4012 EOAC_AUTO_IMPERSONATE = 0x400, 4013 EOAC_NO_CUSTOM_MARSHAL = 0x2000, 4014 EOAC_DISABLE_AAA = 0x1000 4015 } EOLE_AUTHENTICATION_CAPABILITIES; 4016 4017 #define COLE_DEFAULT_PRINCIPAL ((OLECHAR *)(INT_PTR)-1) 4018 4019 #define COLE_DEFAULT_AUTHINFO ((void *)(INT_PTR)-1) 4020 4021 4022 typedef struct tagSOLE_AUTHENTICATION_INFO { 4023 DWORD dwAuthnSvc; 4024 DWORD dwAuthzSvc; 4025 void *pAuthInfo; 4026 } SOLE_AUTHENTICATION_INFO; 4027 typedef struct tagSOLE_AUTHENTICATION_INFO *PSOLE_AUTHENTICATION_INFO; 4028 4029 typedef struct tagSOLE_AUTHENTICATION_LIST { 4030 DWORD cAuthInfo; 4031 SOLE_AUTHENTICATION_INFO *aAuthInfo; 4032 } SOLE_AUTHENTICATION_LIST; 4033 typedef struct tagSOLE_AUTHENTICATION_LIST *PSOLE_AUTHENTICATION_LIST; 4034 4035 DEFINE_GUID(IID_IClientSecurity, 0x0000013d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4036 #if defined(__cplusplus) && !defined(CINTERFACE) 4037 MIDL_INTERFACE("0000013d-0000-0000-c000-000000000046") 4038 IClientSecurity : public IUnknown 4039 { 4040 virtual HRESULT STDMETHODCALLTYPE QueryBlanket( 4041 IUnknown *pProxy, 4042 DWORD *pAuthnSvc, 4043 DWORD *pAuthzSvc, 4044 OLECHAR **pServerPrincName, 4045 DWORD *pAuthnLevel, 4046 DWORD *pImpLevel, 4047 void **pAuthInfo, 4048 DWORD *pCapabilites) = 0; 4049 4050 virtual HRESULT STDMETHODCALLTYPE SetBlanket( 4051 IUnknown *pProxy, 4052 DWORD dwAuthnSvc, 4053 DWORD dwAuthzSvc, 4054 OLECHAR *pServerPrincName, 4055 DWORD dwAuthnLevel, 4056 DWORD dwImpLevel, 4057 void *pAuthInfo, 4058 DWORD dwCapabilities) = 0; 4059 4060 virtual HRESULT STDMETHODCALLTYPE CopyProxy( 4061 IUnknown *pProxy, 4062 IUnknown **ppCopy) = 0; 4063 4064 }; 4065 #ifdef __CRT_UUID_DECL 4066 __CRT_UUID_DECL(IClientSecurity, 0x0000013d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4067 #endif 4068 #else 4069 typedef struct IClientSecurityVtbl { 4070 BEGIN_INTERFACE 4071 4072 /*** IUnknown methods ***/ 4073 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4074 IClientSecurity* This, 4075 REFIID riid, 4076 void **ppvObject); 4077 4078 ULONG (STDMETHODCALLTYPE *AddRef)( 4079 IClientSecurity* This); 4080 4081 ULONG (STDMETHODCALLTYPE *Release)( 4082 IClientSecurity* This); 4083 4084 /*** IClientSecurity methods ***/ 4085 HRESULT (STDMETHODCALLTYPE *QueryBlanket)( 4086 IClientSecurity* This, 4087 IUnknown *pProxy, 4088 DWORD *pAuthnSvc, 4089 DWORD *pAuthzSvc, 4090 OLECHAR **pServerPrincName, 4091 DWORD *pAuthnLevel, 4092 DWORD *pImpLevel, 4093 void **pAuthInfo, 4094 DWORD *pCapabilites); 4095 4096 HRESULT (STDMETHODCALLTYPE *SetBlanket)( 4097 IClientSecurity* This, 4098 IUnknown *pProxy, 4099 DWORD dwAuthnSvc, 4100 DWORD dwAuthzSvc, 4101 OLECHAR *pServerPrincName, 4102 DWORD dwAuthnLevel, 4103 DWORD dwImpLevel, 4104 void *pAuthInfo, 4105 DWORD dwCapabilities); 4106 4107 HRESULT (STDMETHODCALLTYPE *CopyProxy)( 4108 IClientSecurity* This, 4109 IUnknown *pProxy, 4110 IUnknown **ppCopy); 4111 4112 END_INTERFACE 4113 } IClientSecurityVtbl; 4114 interface IClientSecurity { 4115 CONST_VTBL IClientSecurityVtbl* lpVtbl; 4116 }; 4117 4118 #ifdef COBJMACROS 4119 #ifndef WIDL_C_INLINE_WRAPPERS 4120 /*** IUnknown methods ***/ 4121 #define IClientSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4122 #define IClientSecurity_AddRef(This) (This)->lpVtbl->AddRef(This) 4123 #define IClientSecurity_Release(This) (This)->lpVtbl->Release(This) 4124 /*** IClientSecurity methods ***/ 4125 #define IClientSecurity_QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites) (This)->lpVtbl->QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites) 4126 #define IClientSecurity_SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities) (This)->lpVtbl->SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities) 4127 #define IClientSecurity_CopyProxy(This,pProxy,ppCopy) (This)->lpVtbl->CopyProxy(This,pProxy,ppCopy) 4128 #else 4129 /*** IUnknown methods ***/ 4130 static FORCEINLINE HRESULT IClientSecurity_QueryInterface(IClientSecurity* This,REFIID riid,void **ppvObject) { 4131 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4132 } 4133 static FORCEINLINE ULONG IClientSecurity_AddRef(IClientSecurity* This) { 4134 return This->lpVtbl->AddRef(This); 4135 } 4136 static FORCEINLINE ULONG IClientSecurity_Release(IClientSecurity* This) { 4137 return This->lpVtbl->Release(This); 4138 } 4139 /*** IClientSecurity methods ***/ 4140 static FORCEINLINE HRESULT IClientSecurity_QueryBlanket(IClientSecurity* This,IUnknown *pProxy,DWORD *pAuthnSvc,DWORD *pAuthzSvc,OLECHAR **pServerPrincName,DWORD *pAuthnLevel,DWORD *pImpLevel,void **pAuthInfo,DWORD *pCapabilites) { 4141 return This->lpVtbl->QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites); 4142 } 4143 static FORCEINLINE HRESULT IClientSecurity_SetBlanket(IClientSecurity* This,IUnknown *pProxy,DWORD dwAuthnSvc,DWORD dwAuthzSvc,OLECHAR *pServerPrincName,DWORD dwAuthnLevel,DWORD dwImpLevel,void *pAuthInfo,DWORD dwCapabilities) { 4144 return This->lpVtbl->SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities); 4145 } 4146 static FORCEINLINE HRESULT IClientSecurity_CopyProxy(IClientSecurity* This,IUnknown *pProxy,IUnknown **ppCopy) { 4147 return This->lpVtbl->CopyProxy(This,pProxy,ppCopy); 4148 } 4149 #endif 4150 #endif 4151 4152 #endif 4153 4154 HRESULT STDMETHODCALLTYPE IClientSecurity_QueryBlanket_Proxy( 4155 IClientSecurity* This, 4156 IUnknown *pProxy, 4157 DWORD *pAuthnSvc, 4158 DWORD *pAuthzSvc, 4159 OLECHAR **pServerPrincName, 4160 DWORD *pAuthnLevel, 4161 DWORD *pImpLevel, 4162 void **pAuthInfo, 4163 DWORD *pCapabilites); 4164 void __RPC_STUB IClientSecurity_QueryBlanket_Stub( 4165 IRpcStubBuffer* This, 4166 IRpcChannelBuffer* pRpcChannelBuffer, 4167 PRPC_MESSAGE pRpcMessage, 4168 DWORD* pdwStubPhase); 4169 HRESULT STDMETHODCALLTYPE IClientSecurity_SetBlanket_Proxy( 4170 IClientSecurity* This, 4171 IUnknown *pProxy, 4172 DWORD dwAuthnSvc, 4173 DWORD dwAuthzSvc, 4174 OLECHAR *pServerPrincName, 4175 DWORD dwAuthnLevel, 4176 DWORD dwImpLevel, 4177 void *pAuthInfo, 4178 DWORD dwCapabilities); 4179 void __RPC_STUB IClientSecurity_SetBlanket_Stub( 4180 IRpcStubBuffer* This, 4181 IRpcChannelBuffer* pRpcChannelBuffer, 4182 PRPC_MESSAGE pRpcMessage, 4183 DWORD* pdwStubPhase); 4184 HRESULT STDMETHODCALLTYPE IClientSecurity_CopyProxy_Proxy( 4185 IClientSecurity* This, 4186 IUnknown *pProxy, 4187 IUnknown **ppCopy); 4188 void __RPC_STUB IClientSecurity_CopyProxy_Stub( 4189 IRpcStubBuffer* This, 4190 IRpcChannelBuffer* pRpcChannelBuffer, 4191 PRPC_MESSAGE pRpcMessage, 4192 DWORD* pdwStubPhase); 4193 4194 #endif /* __IClientSecurity_INTERFACE_DEFINED__ */ 4195 4196 #endif 4197 4198 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 4199 /***************************************************************************** 4200 * IServerSecurity interface 4201 */ 4202 #ifndef __IServerSecurity_INTERFACE_DEFINED__ 4203 #define __IServerSecurity_INTERFACE_DEFINED__ 4204 4205 DEFINE_GUID(IID_IServerSecurity, 0x0000013e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4206 #if defined(__cplusplus) && !defined(CINTERFACE) 4207 MIDL_INTERFACE("0000013e-0000-0000-c000-000000000046") 4208 IServerSecurity : public IUnknown 4209 { 4210 virtual HRESULT STDMETHODCALLTYPE QueryBlanket( 4211 DWORD *pAuthnSvc, 4212 DWORD *pAuthzSvc, 4213 OLECHAR **pServerPrincName, 4214 DWORD *pAuthnLevel, 4215 DWORD *pImpLevel, 4216 void **pPrivs, 4217 DWORD *pCapabilities) = 0; 4218 4219 virtual HRESULT STDMETHODCALLTYPE ImpersonateClient( 4220 ) = 0; 4221 4222 virtual HRESULT STDMETHODCALLTYPE RevertToSelf( 4223 ) = 0; 4224 4225 virtual WINBOOL STDMETHODCALLTYPE IsImpersonating( 4226 ) = 0; 4227 4228 }; 4229 #ifdef __CRT_UUID_DECL 4230 __CRT_UUID_DECL(IServerSecurity, 0x0000013e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4231 #endif 4232 #else 4233 typedef struct IServerSecurityVtbl { 4234 BEGIN_INTERFACE 4235 4236 /*** IUnknown methods ***/ 4237 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4238 IServerSecurity* This, 4239 REFIID riid, 4240 void **ppvObject); 4241 4242 ULONG (STDMETHODCALLTYPE *AddRef)( 4243 IServerSecurity* This); 4244 4245 ULONG (STDMETHODCALLTYPE *Release)( 4246 IServerSecurity* This); 4247 4248 /*** IServerSecurity methods ***/ 4249 HRESULT (STDMETHODCALLTYPE *QueryBlanket)( 4250 IServerSecurity* This, 4251 DWORD *pAuthnSvc, 4252 DWORD *pAuthzSvc, 4253 OLECHAR **pServerPrincName, 4254 DWORD *pAuthnLevel, 4255 DWORD *pImpLevel, 4256 void **pPrivs, 4257 DWORD *pCapabilities); 4258 4259 HRESULT (STDMETHODCALLTYPE *ImpersonateClient)( 4260 IServerSecurity* This); 4261 4262 HRESULT (STDMETHODCALLTYPE *RevertToSelf)( 4263 IServerSecurity* This); 4264 4265 WINBOOL (STDMETHODCALLTYPE *IsImpersonating)( 4266 IServerSecurity* This); 4267 4268 END_INTERFACE 4269 } IServerSecurityVtbl; 4270 interface IServerSecurity { 4271 CONST_VTBL IServerSecurityVtbl* lpVtbl; 4272 }; 4273 4274 #ifdef COBJMACROS 4275 #ifndef WIDL_C_INLINE_WRAPPERS 4276 /*** IUnknown methods ***/ 4277 #define IServerSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4278 #define IServerSecurity_AddRef(This) (This)->lpVtbl->AddRef(This) 4279 #define IServerSecurity_Release(This) (This)->lpVtbl->Release(This) 4280 /*** IServerSecurity methods ***/ 4281 #define IServerSecurity_QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities) (This)->lpVtbl->QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities) 4282 #define IServerSecurity_ImpersonateClient(This) (This)->lpVtbl->ImpersonateClient(This) 4283 #define IServerSecurity_RevertToSelf(This) (This)->lpVtbl->RevertToSelf(This) 4284 #define IServerSecurity_IsImpersonating(This) (This)->lpVtbl->IsImpersonating(This) 4285 #else 4286 /*** IUnknown methods ***/ 4287 static FORCEINLINE HRESULT IServerSecurity_QueryInterface(IServerSecurity* This,REFIID riid,void **ppvObject) { 4288 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4289 } 4290 static FORCEINLINE ULONG IServerSecurity_AddRef(IServerSecurity* This) { 4291 return This->lpVtbl->AddRef(This); 4292 } 4293 static FORCEINLINE ULONG IServerSecurity_Release(IServerSecurity* This) { 4294 return This->lpVtbl->Release(This); 4295 } 4296 /*** IServerSecurity methods ***/ 4297 static FORCEINLINE HRESULT IServerSecurity_QueryBlanket(IServerSecurity* This,DWORD *pAuthnSvc,DWORD *pAuthzSvc,OLECHAR **pServerPrincName,DWORD *pAuthnLevel,DWORD *pImpLevel,void **pPrivs,DWORD *pCapabilities) { 4298 return This->lpVtbl->QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities); 4299 } 4300 static FORCEINLINE HRESULT IServerSecurity_ImpersonateClient(IServerSecurity* This) { 4301 return This->lpVtbl->ImpersonateClient(This); 4302 } 4303 static FORCEINLINE HRESULT IServerSecurity_RevertToSelf(IServerSecurity* This) { 4304 return This->lpVtbl->RevertToSelf(This); 4305 } 4306 static FORCEINLINE WINBOOL IServerSecurity_IsImpersonating(IServerSecurity* This) { 4307 return This->lpVtbl->IsImpersonating(This); 4308 } 4309 #endif 4310 #endif 4311 4312 #endif 4313 4314 HRESULT STDMETHODCALLTYPE IServerSecurity_QueryBlanket_Proxy( 4315 IServerSecurity* This, 4316 DWORD *pAuthnSvc, 4317 DWORD *pAuthzSvc, 4318 OLECHAR **pServerPrincName, 4319 DWORD *pAuthnLevel, 4320 DWORD *pImpLevel, 4321 void **pPrivs, 4322 DWORD *pCapabilities); 4323 void __RPC_STUB IServerSecurity_QueryBlanket_Stub( 4324 IRpcStubBuffer* This, 4325 IRpcChannelBuffer* pRpcChannelBuffer, 4326 PRPC_MESSAGE pRpcMessage, 4327 DWORD* pdwStubPhase); 4328 HRESULT STDMETHODCALLTYPE IServerSecurity_ImpersonateClient_Proxy( 4329 IServerSecurity* This); 4330 void __RPC_STUB IServerSecurity_ImpersonateClient_Stub( 4331 IRpcStubBuffer* This, 4332 IRpcChannelBuffer* pRpcChannelBuffer, 4333 PRPC_MESSAGE pRpcMessage, 4334 DWORD* pdwStubPhase); 4335 HRESULT STDMETHODCALLTYPE IServerSecurity_RevertToSelf_Proxy( 4336 IServerSecurity* This); 4337 void __RPC_STUB IServerSecurity_RevertToSelf_Stub( 4338 IRpcStubBuffer* This, 4339 IRpcChannelBuffer* pRpcChannelBuffer, 4340 PRPC_MESSAGE pRpcMessage, 4341 DWORD* pdwStubPhase); 4342 WINBOOL STDMETHODCALLTYPE IServerSecurity_IsImpersonating_Proxy( 4343 IServerSecurity* This); 4344 void __RPC_STUB IServerSecurity_IsImpersonating_Stub( 4345 IRpcStubBuffer* This, 4346 IRpcChannelBuffer* pRpcChannelBuffer, 4347 PRPC_MESSAGE pRpcMessage, 4348 DWORD* pdwStubPhase); 4349 4350 #endif /* __IServerSecurity_INTERFACE_DEFINED__ */ 4351 4352 4353 typedef enum tagRPCOPT_PROPERTIES { 4354 COMBND_RPCTIMEOUT = 0x1, 4355 COMBND_SERVER_LOCALITY = 0x2, 4356 COMBND_RESERVED1 = 0x4 4357 } RPCOPT_PROPERTIES; 4358 4359 typedef enum tagRPCOPT_SERVER_LOCALITY_VALUES { 4360 SERVER_LOCALITY_PROCESS_LOCAL = 0, 4361 SERVER_LOCALITY_MACHINE_LOCAL = 1, 4362 SERVER_LOCALITY_REMOTE = 2 4363 } RPCOPT_SERVER_LOCALITY_VALUES; 4364 4365 /***************************************************************************** 4366 * IRpcOptions interface 4367 */ 4368 #ifndef __IRpcOptions_INTERFACE_DEFINED__ 4369 #define __IRpcOptions_INTERFACE_DEFINED__ 4370 4371 DEFINE_GUID(IID_IRpcOptions, 0x00000144, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4372 #if defined(__cplusplus) && !defined(CINTERFACE) 4373 MIDL_INTERFACE("00000144-0000-0000-c000-000000000046") 4374 IRpcOptions : public IUnknown 4375 { 4376 virtual HRESULT STDMETHODCALLTYPE Set( 4377 IUnknown *pPrx, 4378 RPCOPT_PROPERTIES dwProperty, 4379 ULONG_PTR dwValue) = 0; 4380 4381 virtual HRESULT STDMETHODCALLTYPE Query( 4382 IUnknown *pPrx, 4383 RPCOPT_PROPERTIES dwProperty, 4384 ULONG_PTR *pdwValue) = 0; 4385 4386 }; 4387 #ifdef __CRT_UUID_DECL 4388 __CRT_UUID_DECL(IRpcOptions, 0x00000144, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4389 #endif 4390 #else 4391 typedef struct IRpcOptionsVtbl { 4392 BEGIN_INTERFACE 4393 4394 /*** IUnknown methods ***/ 4395 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4396 IRpcOptions* This, 4397 REFIID riid, 4398 void **ppvObject); 4399 4400 ULONG (STDMETHODCALLTYPE *AddRef)( 4401 IRpcOptions* This); 4402 4403 ULONG (STDMETHODCALLTYPE *Release)( 4404 IRpcOptions* This); 4405 4406 /*** IRpcOptions methods ***/ 4407 HRESULT (STDMETHODCALLTYPE *Set)( 4408 IRpcOptions* This, 4409 IUnknown *pPrx, 4410 RPCOPT_PROPERTIES dwProperty, 4411 ULONG_PTR dwValue); 4412 4413 HRESULT (STDMETHODCALLTYPE *Query)( 4414 IRpcOptions* This, 4415 IUnknown *pPrx, 4416 RPCOPT_PROPERTIES dwProperty, 4417 ULONG_PTR *pdwValue); 4418 4419 END_INTERFACE 4420 } IRpcOptionsVtbl; 4421 interface IRpcOptions { 4422 CONST_VTBL IRpcOptionsVtbl* lpVtbl; 4423 }; 4424 4425 #ifdef COBJMACROS 4426 #ifndef WIDL_C_INLINE_WRAPPERS 4427 /*** IUnknown methods ***/ 4428 #define IRpcOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4429 #define IRpcOptions_AddRef(This) (This)->lpVtbl->AddRef(This) 4430 #define IRpcOptions_Release(This) (This)->lpVtbl->Release(This) 4431 /*** IRpcOptions methods ***/ 4432 #define IRpcOptions_Set(This,pPrx,dwProperty,dwValue) (This)->lpVtbl->Set(This,pPrx,dwProperty,dwValue) 4433 #define IRpcOptions_Query(This,pPrx,dwProperty,pdwValue) (This)->lpVtbl->Query(This,pPrx,dwProperty,pdwValue) 4434 #else 4435 /*** IUnknown methods ***/ 4436 static FORCEINLINE HRESULT IRpcOptions_QueryInterface(IRpcOptions* This,REFIID riid,void **ppvObject) { 4437 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4438 } 4439 static FORCEINLINE ULONG IRpcOptions_AddRef(IRpcOptions* This) { 4440 return This->lpVtbl->AddRef(This); 4441 } 4442 static FORCEINLINE ULONG IRpcOptions_Release(IRpcOptions* This) { 4443 return This->lpVtbl->Release(This); 4444 } 4445 /*** IRpcOptions methods ***/ 4446 static FORCEINLINE HRESULT IRpcOptions_Set(IRpcOptions* This,IUnknown *pPrx,RPCOPT_PROPERTIES dwProperty,ULONG_PTR dwValue) { 4447 return This->lpVtbl->Set(This,pPrx,dwProperty,dwValue); 4448 } 4449 static FORCEINLINE HRESULT IRpcOptions_Query(IRpcOptions* This,IUnknown *pPrx,RPCOPT_PROPERTIES dwProperty,ULONG_PTR *pdwValue) { 4450 return This->lpVtbl->Query(This,pPrx,dwProperty,pdwValue); 4451 } 4452 #endif 4453 #endif 4454 4455 #endif 4456 4457 HRESULT STDMETHODCALLTYPE IRpcOptions_Set_Proxy( 4458 IRpcOptions* This, 4459 IUnknown *pPrx, 4460 RPCOPT_PROPERTIES dwProperty, 4461 ULONG_PTR dwValue); 4462 void __RPC_STUB IRpcOptions_Set_Stub( 4463 IRpcStubBuffer* This, 4464 IRpcChannelBuffer* pRpcChannelBuffer, 4465 PRPC_MESSAGE pRpcMessage, 4466 DWORD* pdwStubPhase); 4467 HRESULT STDMETHODCALLTYPE IRpcOptions_Query_Proxy( 4468 IRpcOptions* This, 4469 IUnknown *pPrx, 4470 RPCOPT_PROPERTIES dwProperty, 4471 ULONG_PTR *pdwValue); 4472 void __RPC_STUB IRpcOptions_Query_Stub( 4473 IRpcStubBuffer* This, 4474 IRpcChannelBuffer* pRpcChannelBuffer, 4475 PRPC_MESSAGE pRpcMessage, 4476 DWORD* pdwStubPhase); 4477 4478 #endif /* __IRpcOptions_INTERFACE_DEFINED__ */ 4479 4480 #endif 4481 4482 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 4483 typedef enum tagGLOBALOPT_PROPERTIES { 4484 COMGLB_EXCEPTION_HANDLING = 1, 4485 COMGLB_APPID = 2, 4486 COMGLB_RPC_THREADPOOL_SETTING = 3, 4487 COMGLB_RO_SETTINGS = 4, 4488 COMGLB_UNMARSHALING_POLICY = 5 4489 } GLOBALOPT_PROPERTIES; 4490 4491 typedef enum tagGLOBALOPT_EH_VALUES { 4492 COMGLB_EXCEPTION_HANDLE = 0, 4493 COMGLB_EXCEPTION_DONOT_HANDLE_FATAL = 1, 4494 COMGLB_EXCEPTION_DONOT_HANDLE = COMGLB_EXCEPTION_DONOT_HANDLE_FATAL, 4495 COMGLB_EXCEPTION_DONOT_HANDLE_ANY = 2 4496 } GLOBALOPT_EH_VALUES; 4497 4498 typedef enum tagGLOBALOPT_RPCTP_VALUES { 4499 COMGLB_RPC_THREADPOOL_SETTING_DEFAULT_POOL = 0, 4500 COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1 4501 } GLOBALOPT_RPCTP_VALUES; 4502 4503 typedef enum tagGLOBALOPT_RO_FLAGS { 4504 COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 0x1, 4505 COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 0x2, 4506 COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 0x4, 4507 COMGLB_FAST_RUNDOWN = 0x8, 4508 COMGLB_RESERVED1 = 0x10, 4509 COMGLB_RESERVED2 = 0x20, 4510 COMGLB_RESERVED3 = 0x40, 4511 COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 0x80 4512 } GLOBALOPT_RO_FLAGS; 4513 4514 typedef enum tagGLOBALOPT_UNMARSHALING_POLICY_VALUES { 4515 COMGLB_UNMARSHALING_POLICY_NORMAL = 0, 4516 COMGLB_UNMARSHALING_POLICY_STRONG = 1, 4517 COMGLB_UNMARSHALING_POLICY_HYBRID = 2 4518 } GLOBALOPT_UNMARSHALING_POLICY_VALUES; 4519 4520 /***************************************************************************** 4521 * IGlobalOptions interface 4522 */ 4523 #ifndef __IGlobalOptions_INTERFACE_DEFINED__ 4524 #define __IGlobalOptions_INTERFACE_DEFINED__ 4525 4526 DEFINE_GUID(IID_IGlobalOptions, 0x0000015b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4527 #if defined(__cplusplus) && !defined(CINTERFACE) 4528 MIDL_INTERFACE("0000015b-0000-0000-c000-000000000046") 4529 IGlobalOptions : public IUnknown 4530 { 4531 virtual HRESULT STDMETHODCALLTYPE Set( 4532 GLOBALOPT_PROPERTIES dwProperty, 4533 ULONG_PTR dwValue) = 0; 4534 4535 virtual HRESULT STDMETHODCALLTYPE Query( 4536 GLOBALOPT_PROPERTIES dwProperty, 4537 ULONG_PTR *pdwValue) = 0; 4538 4539 }; 4540 #ifdef __CRT_UUID_DECL 4541 __CRT_UUID_DECL(IGlobalOptions, 0x0000015b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4542 #endif 4543 #else 4544 typedef struct IGlobalOptionsVtbl { 4545 BEGIN_INTERFACE 4546 4547 /*** IUnknown methods ***/ 4548 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4549 IGlobalOptions* This, 4550 REFIID riid, 4551 void **ppvObject); 4552 4553 ULONG (STDMETHODCALLTYPE *AddRef)( 4554 IGlobalOptions* This); 4555 4556 ULONG (STDMETHODCALLTYPE *Release)( 4557 IGlobalOptions* This); 4558 4559 /*** IGlobalOptions methods ***/ 4560 HRESULT (STDMETHODCALLTYPE *Set)( 4561 IGlobalOptions* This, 4562 GLOBALOPT_PROPERTIES dwProperty, 4563 ULONG_PTR dwValue); 4564 4565 HRESULT (STDMETHODCALLTYPE *Query)( 4566 IGlobalOptions* This, 4567 GLOBALOPT_PROPERTIES dwProperty, 4568 ULONG_PTR *pdwValue); 4569 4570 END_INTERFACE 4571 } IGlobalOptionsVtbl; 4572 interface IGlobalOptions { 4573 CONST_VTBL IGlobalOptionsVtbl* lpVtbl; 4574 }; 4575 4576 #ifdef COBJMACROS 4577 #ifndef WIDL_C_INLINE_WRAPPERS 4578 /*** IUnknown methods ***/ 4579 #define IGlobalOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4580 #define IGlobalOptions_AddRef(This) (This)->lpVtbl->AddRef(This) 4581 #define IGlobalOptions_Release(This) (This)->lpVtbl->Release(This) 4582 /*** IGlobalOptions methods ***/ 4583 #define IGlobalOptions_Set(This,dwProperty,dwValue) (This)->lpVtbl->Set(This,dwProperty,dwValue) 4584 #define IGlobalOptions_Query(This,dwProperty,pdwValue) (This)->lpVtbl->Query(This,dwProperty,pdwValue) 4585 #else 4586 /*** IUnknown methods ***/ 4587 static FORCEINLINE HRESULT IGlobalOptions_QueryInterface(IGlobalOptions* This,REFIID riid,void **ppvObject) { 4588 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4589 } 4590 static FORCEINLINE ULONG IGlobalOptions_AddRef(IGlobalOptions* This) { 4591 return This->lpVtbl->AddRef(This); 4592 } 4593 static FORCEINLINE ULONG IGlobalOptions_Release(IGlobalOptions* This) { 4594 return This->lpVtbl->Release(This); 4595 } 4596 /*** IGlobalOptions methods ***/ 4597 static FORCEINLINE HRESULT IGlobalOptions_Set(IGlobalOptions* This,GLOBALOPT_PROPERTIES dwProperty,ULONG_PTR dwValue) { 4598 return This->lpVtbl->Set(This,dwProperty,dwValue); 4599 } 4600 static FORCEINLINE HRESULT IGlobalOptions_Query(IGlobalOptions* This,GLOBALOPT_PROPERTIES dwProperty,ULONG_PTR *pdwValue) { 4601 return This->lpVtbl->Query(This,dwProperty,pdwValue); 4602 } 4603 #endif 4604 #endif 4605 4606 #endif 4607 4608 HRESULT STDMETHODCALLTYPE IGlobalOptions_Set_Proxy( 4609 IGlobalOptions* This, 4610 GLOBALOPT_PROPERTIES dwProperty, 4611 ULONG_PTR dwValue); 4612 void __RPC_STUB IGlobalOptions_Set_Stub( 4613 IRpcStubBuffer* This, 4614 IRpcChannelBuffer* pRpcChannelBuffer, 4615 PRPC_MESSAGE pRpcMessage, 4616 DWORD* pdwStubPhase); 4617 HRESULT STDMETHODCALLTYPE IGlobalOptions_Query_Proxy( 4618 IGlobalOptions* This, 4619 GLOBALOPT_PROPERTIES dwProperty, 4620 ULONG_PTR *pdwValue); 4621 void __RPC_STUB IGlobalOptions_Query_Stub( 4622 IRpcStubBuffer* This, 4623 IRpcChannelBuffer* pRpcChannelBuffer, 4624 PRPC_MESSAGE pRpcMessage, 4625 DWORD* pdwStubPhase); 4626 4627 #endif /* __IGlobalOptions_INTERFACE_DEFINED__ */ 4628 4629 #endif 4630 #endif 4631 4632 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 4633 /***************************************************************************** 4634 * ISurrogate interface 4635 */ 4636 #ifndef __ISurrogate_INTERFACE_DEFINED__ 4637 #define __ISurrogate_INTERFACE_DEFINED__ 4638 4639 typedef ISurrogate *LPSURROGATE; 4640 4641 DEFINE_GUID(IID_ISurrogate, 0x00000022, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4642 #if defined(__cplusplus) && !defined(CINTERFACE) 4643 MIDL_INTERFACE("00000022-0000-0000-c000-000000000046") 4644 ISurrogate : public IUnknown 4645 { 4646 virtual HRESULT STDMETHODCALLTYPE LoadDllServer( 4647 REFCLSID Clsid) = 0; 4648 4649 virtual HRESULT STDMETHODCALLTYPE FreeSurrogate( 4650 ) = 0; 4651 4652 }; 4653 #ifdef __CRT_UUID_DECL 4654 __CRT_UUID_DECL(ISurrogate, 0x00000022, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4655 #endif 4656 #else 4657 typedef struct ISurrogateVtbl { 4658 BEGIN_INTERFACE 4659 4660 /*** IUnknown methods ***/ 4661 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4662 ISurrogate* This, 4663 REFIID riid, 4664 void **ppvObject); 4665 4666 ULONG (STDMETHODCALLTYPE *AddRef)( 4667 ISurrogate* This); 4668 4669 ULONG (STDMETHODCALLTYPE *Release)( 4670 ISurrogate* This); 4671 4672 /*** ISurrogate methods ***/ 4673 HRESULT (STDMETHODCALLTYPE *LoadDllServer)( 4674 ISurrogate* This, 4675 REFCLSID Clsid); 4676 4677 HRESULT (STDMETHODCALLTYPE *FreeSurrogate)( 4678 ISurrogate* This); 4679 4680 END_INTERFACE 4681 } ISurrogateVtbl; 4682 interface ISurrogate { 4683 CONST_VTBL ISurrogateVtbl* lpVtbl; 4684 }; 4685 4686 #ifdef COBJMACROS 4687 #ifndef WIDL_C_INLINE_WRAPPERS 4688 /*** IUnknown methods ***/ 4689 #define ISurrogate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4690 #define ISurrogate_AddRef(This) (This)->lpVtbl->AddRef(This) 4691 #define ISurrogate_Release(This) (This)->lpVtbl->Release(This) 4692 /*** ISurrogate methods ***/ 4693 #define ISurrogate_LoadDllServer(This,Clsid) (This)->lpVtbl->LoadDllServer(This,Clsid) 4694 #define ISurrogate_FreeSurrogate(This) (This)->lpVtbl->FreeSurrogate(This) 4695 #else 4696 /*** IUnknown methods ***/ 4697 static FORCEINLINE HRESULT ISurrogate_QueryInterface(ISurrogate* This,REFIID riid,void **ppvObject) { 4698 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4699 } 4700 static FORCEINLINE ULONG ISurrogate_AddRef(ISurrogate* This) { 4701 return This->lpVtbl->AddRef(This); 4702 } 4703 static FORCEINLINE ULONG ISurrogate_Release(ISurrogate* This) { 4704 return This->lpVtbl->Release(This); 4705 } 4706 /*** ISurrogate methods ***/ 4707 static FORCEINLINE HRESULT ISurrogate_LoadDllServer(ISurrogate* This,REFCLSID Clsid) { 4708 return This->lpVtbl->LoadDllServer(This,Clsid); 4709 } 4710 static FORCEINLINE HRESULT ISurrogate_FreeSurrogate(ISurrogate* This) { 4711 return This->lpVtbl->FreeSurrogate(This); 4712 } 4713 #endif 4714 #endif 4715 4716 #endif 4717 4718 HRESULT STDMETHODCALLTYPE ISurrogate_LoadDllServer_Proxy( 4719 ISurrogate* This, 4720 REFCLSID Clsid); 4721 void __RPC_STUB ISurrogate_LoadDllServer_Stub( 4722 IRpcStubBuffer* This, 4723 IRpcChannelBuffer* pRpcChannelBuffer, 4724 PRPC_MESSAGE pRpcMessage, 4725 DWORD* pdwStubPhase); 4726 HRESULT STDMETHODCALLTYPE ISurrogate_FreeSurrogate_Proxy( 4727 ISurrogate* This); 4728 void __RPC_STUB ISurrogate_FreeSurrogate_Stub( 4729 IRpcStubBuffer* This, 4730 IRpcChannelBuffer* pRpcChannelBuffer, 4731 PRPC_MESSAGE pRpcMessage, 4732 DWORD* pdwStubPhase); 4733 4734 #endif /* __ISurrogate_INTERFACE_DEFINED__ */ 4735 4736 4737 /***************************************************************************** 4738 * IGlobalInterfaceTable interface 4739 */ 4740 #ifndef __IGlobalInterfaceTable_INTERFACE_DEFINED__ 4741 #define __IGlobalInterfaceTable_INTERFACE_DEFINED__ 4742 4743 typedef IGlobalInterfaceTable *LPGLOBALINTERFACETABLE; 4744 4745 DEFINE_GUID(IID_IGlobalInterfaceTable, 0x00000146, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4746 #if defined(__cplusplus) && !defined(CINTERFACE) 4747 MIDL_INTERFACE("00000146-0000-0000-c000-000000000046") 4748 IGlobalInterfaceTable : public IUnknown 4749 { 4750 virtual HRESULT STDMETHODCALLTYPE RegisterInterfaceInGlobal( 4751 IUnknown *pUnk, 4752 REFIID riid, 4753 DWORD *pdwCookie) = 0; 4754 4755 virtual HRESULT STDMETHODCALLTYPE RevokeInterfaceFromGlobal( 4756 DWORD dwCookie) = 0; 4757 4758 virtual HRESULT STDMETHODCALLTYPE GetInterfaceFromGlobal( 4759 DWORD dwCookie, 4760 REFIID riid, 4761 void **ppv) = 0; 4762 4763 }; 4764 #ifdef __CRT_UUID_DECL 4765 __CRT_UUID_DECL(IGlobalInterfaceTable, 0x00000146, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4766 #endif 4767 #else 4768 typedef struct IGlobalInterfaceTableVtbl { 4769 BEGIN_INTERFACE 4770 4771 /*** IUnknown methods ***/ 4772 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4773 IGlobalInterfaceTable* This, 4774 REFIID riid, 4775 void **ppvObject); 4776 4777 ULONG (STDMETHODCALLTYPE *AddRef)( 4778 IGlobalInterfaceTable* This); 4779 4780 ULONG (STDMETHODCALLTYPE *Release)( 4781 IGlobalInterfaceTable* This); 4782 4783 /*** IGlobalInterfaceTable methods ***/ 4784 HRESULT (STDMETHODCALLTYPE *RegisterInterfaceInGlobal)( 4785 IGlobalInterfaceTable* This, 4786 IUnknown *pUnk, 4787 REFIID riid, 4788 DWORD *pdwCookie); 4789 4790 HRESULT (STDMETHODCALLTYPE *RevokeInterfaceFromGlobal)( 4791 IGlobalInterfaceTable* This, 4792 DWORD dwCookie); 4793 4794 HRESULT (STDMETHODCALLTYPE *GetInterfaceFromGlobal)( 4795 IGlobalInterfaceTable* This, 4796 DWORD dwCookie, 4797 REFIID riid, 4798 void **ppv); 4799 4800 END_INTERFACE 4801 } IGlobalInterfaceTableVtbl; 4802 interface IGlobalInterfaceTable { 4803 CONST_VTBL IGlobalInterfaceTableVtbl* lpVtbl; 4804 }; 4805 4806 #ifdef COBJMACROS 4807 #ifndef WIDL_C_INLINE_WRAPPERS 4808 /*** IUnknown methods ***/ 4809 #define IGlobalInterfaceTable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4810 #define IGlobalInterfaceTable_AddRef(This) (This)->lpVtbl->AddRef(This) 4811 #define IGlobalInterfaceTable_Release(This) (This)->lpVtbl->Release(This) 4812 /*** IGlobalInterfaceTable methods ***/ 4813 #define IGlobalInterfaceTable_RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie) (This)->lpVtbl->RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie) 4814 #define IGlobalInterfaceTable_RevokeInterfaceFromGlobal(This,dwCookie) (This)->lpVtbl->RevokeInterfaceFromGlobal(This,dwCookie) 4815 #define IGlobalInterfaceTable_GetInterfaceFromGlobal(This,dwCookie,riid,ppv) (This)->lpVtbl->GetInterfaceFromGlobal(This,dwCookie,riid,ppv) 4816 #else 4817 /*** IUnknown methods ***/ 4818 static FORCEINLINE HRESULT IGlobalInterfaceTable_QueryInterface(IGlobalInterfaceTable* This,REFIID riid,void **ppvObject) { 4819 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4820 } 4821 static FORCEINLINE ULONG IGlobalInterfaceTable_AddRef(IGlobalInterfaceTable* This) { 4822 return This->lpVtbl->AddRef(This); 4823 } 4824 static FORCEINLINE ULONG IGlobalInterfaceTable_Release(IGlobalInterfaceTable* This) { 4825 return This->lpVtbl->Release(This); 4826 } 4827 /*** IGlobalInterfaceTable methods ***/ 4828 static FORCEINLINE HRESULT IGlobalInterfaceTable_RegisterInterfaceInGlobal(IGlobalInterfaceTable* This,IUnknown *pUnk,REFIID riid,DWORD *pdwCookie) { 4829 return This->lpVtbl->RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie); 4830 } 4831 static FORCEINLINE HRESULT IGlobalInterfaceTable_RevokeInterfaceFromGlobal(IGlobalInterfaceTable* This,DWORD dwCookie) { 4832 return This->lpVtbl->RevokeInterfaceFromGlobal(This,dwCookie); 4833 } 4834 static FORCEINLINE HRESULT IGlobalInterfaceTable_GetInterfaceFromGlobal(IGlobalInterfaceTable* This,DWORD dwCookie,REFIID riid,void **ppv) { 4835 return This->lpVtbl->GetInterfaceFromGlobal(This,dwCookie,riid,ppv); 4836 } 4837 #endif 4838 #endif 4839 4840 #endif 4841 4842 HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_RegisterInterfaceInGlobal_Proxy( 4843 IGlobalInterfaceTable* This, 4844 IUnknown *pUnk, 4845 REFIID riid, 4846 DWORD *pdwCookie); 4847 void __RPC_STUB IGlobalInterfaceTable_RegisterInterfaceInGlobal_Stub( 4848 IRpcStubBuffer* This, 4849 IRpcChannelBuffer* pRpcChannelBuffer, 4850 PRPC_MESSAGE pRpcMessage, 4851 DWORD* pdwStubPhase); 4852 HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_RevokeInterfaceFromGlobal_Proxy( 4853 IGlobalInterfaceTable* This, 4854 DWORD dwCookie); 4855 void __RPC_STUB IGlobalInterfaceTable_RevokeInterfaceFromGlobal_Stub( 4856 IRpcStubBuffer* This, 4857 IRpcChannelBuffer* pRpcChannelBuffer, 4858 PRPC_MESSAGE pRpcMessage, 4859 DWORD* pdwStubPhase); 4860 HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_GetInterfaceFromGlobal_Proxy( 4861 IGlobalInterfaceTable* This, 4862 DWORD dwCookie, 4863 REFIID riid, 4864 void **ppv); 4865 void __RPC_STUB IGlobalInterfaceTable_GetInterfaceFromGlobal_Stub( 4866 IRpcStubBuffer* This, 4867 IRpcChannelBuffer* pRpcChannelBuffer, 4868 PRPC_MESSAGE pRpcMessage, 4869 DWORD* pdwStubPhase); 4870 4871 #endif /* __IGlobalInterfaceTable_INTERFACE_DEFINED__ */ 4872 4873 #endif 4874 4875 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 4876 /***************************************************************************** 4877 * ISynchronize interface 4878 */ 4879 #ifndef __ISynchronize_INTERFACE_DEFINED__ 4880 #define __ISynchronize_INTERFACE_DEFINED__ 4881 4882 DEFINE_GUID(IID_ISynchronize, 0x00000030, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4883 #if defined(__cplusplus) && !defined(CINTERFACE) 4884 MIDL_INTERFACE("00000030-0000-0000-c000-000000000046") 4885 ISynchronize : public IUnknown 4886 { 4887 virtual HRESULT STDMETHODCALLTYPE Wait( 4888 DWORD dwFlags, 4889 DWORD dwMilliseconds) = 0; 4890 4891 virtual HRESULT STDMETHODCALLTYPE Signal( 4892 ) = 0; 4893 4894 virtual HRESULT STDMETHODCALLTYPE Reset( 4895 ) = 0; 4896 4897 }; 4898 #ifdef __CRT_UUID_DECL 4899 __CRT_UUID_DECL(ISynchronize, 0x00000030, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4900 #endif 4901 #else 4902 typedef struct ISynchronizeVtbl { 4903 BEGIN_INTERFACE 4904 4905 /*** IUnknown methods ***/ 4906 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4907 ISynchronize* This, 4908 REFIID riid, 4909 void **ppvObject); 4910 4911 ULONG (STDMETHODCALLTYPE *AddRef)( 4912 ISynchronize* This); 4913 4914 ULONG (STDMETHODCALLTYPE *Release)( 4915 ISynchronize* This); 4916 4917 /*** ISynchronize methods ***/ 4918 HRESULT (STDMETHODCALLTYPE *Wait)( 4919 ISynchronize* This, 4920 DWORD dwFlags, 4921 DWORD dwMilliseconds); 4922 4923 HRESULT (STDMETHODCALLTYPE *Signal)( 4924 ISynchronize* This); 4925 4926 HRESULT (STDMETHODCALLTYPE *Reset)( 4927 ISynchronize* This); 4928 4929 END_INTERFACE 4930 } ISynchronizeVtbl; 4931 interface ISynchronize { 4932 CONST_VTBL ISynchronizeVtbl* lpVtbl; 4933 }; 4934 4935 #ifdef COBJMACROS 4936 #ifndef WIDL_C_INLINE_WRAPPERS 4937 /*** IUnknown methods ***/ 4938 #define ISynchronize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4939 #define ISynchronize_AddRef(This) (This)->lpVtbl->AddRef(This) 4940 #define ISynchronize_Release(This) (This)->lpVtbl->Release(This) 4941 /*** ISynchronize methods ***/ 4942 #define ISynchronize_Wait(This,dwFlags,dwMilliseconds) (This)->lpVtbl->Wait(This,dwFlags,dwMilliseconds) 4943 #define ISynchronize_Signal(This) (This)->lpVtbl->Signal(This) 4944 #define ISynchronize_Reset(This) (This)->lpVtbl->Reset(This) 4945 #else 4946 /*** IUnknown methods ***/ 4947 static FORCEINLINE HRESULT ISynchronize_QueryInterface(ISynchronize* This,REFIID riid,void **ppvObject) { 4948 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4949 } 4950 static FORCEINLINE ULONG ISynchronize_AddRef(ISynchronize* This) { 4951 return This->lpVtbl->AddRef(This); 4952 } 4953 static FORCEINLINE ULONG ISynchronize_Release(ISynchronize* This) { 4954 return This->lpVtbl->Release(This); 4955 } 4956 /*** ISynchronize methods ***/ 4957 static FORCEINLINE HRESULT ISynchronize_Wait(ISynchronize* This,DWORD dwFlags,DWORD dwMilliseconds) { 4958 return This->lpVtbl->Wait(This,dwFlags,dwMilliseconds); 4959 } 4960 static FORCEINLINE HRESULT ISynchronize_Signal(ISynchronize* This) { 4961 return This->lpVtbl->Signal(This); 4962 } 4963 static FORCEINLINE HRESULT ISynchronize_Reset(ISynchronize* This) { 4964 return This->lpVtbl->Reset(This); 4965 } 4966 #endif 4967 #endif 4968 4969 #endif 4970 4971 HRESULT STDMETHODCALLTYPE ISynchronize_Wait_Proxy( 4972 ISynchronize* This, 4973 DWORD dwFlags, 4974 DWORD dwMilliseconds); 4975 void __RPC_STUB ISynchronize_Wait_Stub( 4976 IRpcStubBuffer* This, 4977 IRpcChannelBuffer* pRpcChannelBuffer, 4978 PRPC_MESSAGE pRpcMessage, 4979 DWORD* pdwStubPhase); 4980 HRESULT STDMETHODCALLTYPE ISynchronize_Signal_Proxy( 4981 ISynchronize* This); 4982 void __RPC_STUB ISynchronize_Signal_Stub( 4983 IRpcStubBuffer* This, 4984 IRpcChannelBuffer* pRpcChannelBuffer, 4985 PRPC_MESSAGE pRpcMessage, 4986 DWORD* pdwStubPhase); 4987 HRESULT STDMETHODCALLTYPE ISynchronize_Reset_Proxy( 4988 ISynchronize* This); 4989 void __RPC_STUB ISynchronize_Reset_Stub( 4990 IRpcStubBuffer* This, 4991 IRpcChannelBuffer* pRpcChannelBuffer, 4992 PRPC_MESSAGE pRpcMessage, 4993 DWORD* pdwStubPhase); 4994 4995 #endif /* __ISynchronize_INTERFACE_DEFINED__ */ 4996 4997 4998 /***************************************************************************** 4999 * ISynchronizeHandle interface 5000 */ 5001 #ifndef __ISynchronizeHandle_INTERFACE_DEFINED__ 5002 #define __ISynchronizeHandle_INTERFACE_DEFINED__ 5003 5004 DEFINE_GUID(IID_ISynchronizeHandle, 0x00000031, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5005 #if defined(__cplusplus) && !defined(CINTERFACE) 5006 MIDL_INTERFACE("00000031-0000-0000-c000-000000000046") 5007 ISynchronizeHandle : public IUnknown 5008 { 5009 virtual HRESULT STDMETHODCALLTYPE GetHandle( 5010 HANDLE *ph) = 0; 5011 5012 }; 5013 #ifdef __CRT_UUID_DECL 5014 __CRT_UUID_DECL(ISynchronizeHandle, 0x00000031, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5015 #endif 5016 #else 5017 typedef struct ISynchronizeHandleVtbl { 5018 BEGIN_INTERFACE 5019 5020 /*** IUnknown methods ***/ 5021 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5022 ISynchronizeHandle* This, 5023 REFIID riid, 5024 void **ppvObject); 5025 5026 ULONG (STDMETHODCALLTYPE *AddRef)( 5027 ISynchronizeHandle* This); 5028 5029 ULONG (STDMETHODCALLTYPE *Release)( 5030 ISynchronizeHandle* This); 5031 5032 /*** ISynchronizeHandle methods ***/ 5033 HRESULT (STDMETHODCALLTYPE *GetHandle)( 5034 ISynchronizeHandle* This, 5035 HANDLE *ph); 5036 5037 END_INTERFACE 5038 } ISynchronizeHandleVtbl; 5039 interface ISynchronizeHandle { 5040 CONST_VTBL ISynchronizeHandleVtbl* lpVtbl; 5041 }; 5042 5043 #ifdef COBJMACROS 5044 #ifndef WIDL_C_INLINE_WRAPPERS 5045 /*** IUnknown methods ***/ 5046 #define ISynchronizeHandle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5047 #define ISynchronizeHandle_AddRef(This) (This)->lpVtbl->AddRef(This) 5048 #define ISynchronizeHandle_Release(This) (This)->lpVtbl->Release(This) 5049 /*** ISynchronizeHandle methods ***/ 5050 #define ISynchronizeHandle_GetHandle(This,ph) (This)->lpVtbl->GetHandle(This,ph) 5051 #else 5052 /*** IUnknown methods ***/ 5053 static FORCEINLINE HRESULT ISynchronizeHandle_QueryInterface(ISynchronizeHandle* This,REFIID riid,void **ppvObject) { 5054 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5055 } 5056 static FORCEINLINE ULONG ISynchronizeHandle_AddRef(ISynchronizeHandle* This) { 5057 return This->lpVtbl->AddRef(This); 5058 } 5059 static FORCEINLINE ULONG ISynchronizeHandle_Release(ISynchronizeHandle* This) { 5060 return This->lpVtbl->Release(This); 5061 } 5062 /*** ISynchronizeHandle methods ***/ 5063 static FORCEINLINE HRESULT ISynchronizeHandle_GetHandle(ISynchronizeHandle* This,HANDLE *ph) { 5064 return This->lpVtbl->GetHandle(This,ph); 5065 } 5066 #endif 5067 #endif 5068 5069 #endif 5070 5071 HRESULT STDMETHODCALLTYPE ISynchronizeHandle_GetHandle_Proxy( 5072 ISynchronizeHandle* This, 5073 HANDLE *ph); 5074 void __RPC_STUB ISynchronizeHandle_GetHandle_Stub( 5075 IRpcStubBuffer* This, 5076 IRpcChannelBuffer* pRpcChannelBuffer, 5077 PRPC_MESSAGE pRpcMessage, 5078 DWORD* pdwStubPhase); 5079 5080 #endif /* __ISynchronizeHandle_INTERFACE_DEFINED__ */ 5081 5082 5083 /***************************************************************************** 5084 * ISynchronizeEvent interface 5085 */ 5086 #ifndef __ISynchronizeEvent_INTERFACE_DEFINED__ 5087 #define __ISynchronizeEvent_INTERFACE_DEFINED__ 5088 5089 DEFINE_GUID(IID_ISynchronizeEvent, 0x00000032, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5090 #if defined(__cplusplus) && !defined(CINTERFACE) 5091 MIDL_INTERFACE("00000032-0000-0000-c000-000000000046") 5092 ISynchronizeEvent : public ISynchronizeHandle 5093 { 5094 virtual HRESULT STDMETHODCALLTYPE SetEventHandle( 5095 HANDLE *ph) = 0; 5096 5097 }; 5098 #ifdef __CRT_UUID_DECL 5099 __CRT_UUID_DECL(ISynchronizeEvent, 0x00000032, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5100 #endif 5101 #else 5102 typedef struct ISynchronizeEventVtbl { 5103 BEGIN_INTERFACE 5104 5105 /*** IUnknown methods ***/ 5106 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5107 ISynchronizeEvent* This, 5108 REFIID riid, 5109 void **ppvObject); 5110 5111 ULONG (STDMETHODCALLTYPE *AddRef)( 5112 ISynchronizeEvent* This); 5113 5114 ULONG (STDMETHODCALLTYPE *Release)( 5115 ISynchronizeEvent* This); 5116 5117 /*** ISynchronizeHandle methods ***/ 5118 HRESULT (STDMETHODCALLTYPE *GetHandle)( 5119 ISynchronizeEvent* This, 5120 HANDLE *ph); 5121 5122 /*** ISynchronizeEvent methods ***/ 5123 HRESULT (STDMETHODCALLTYPE *SetEventHandle)( 5124 ISynchronizeEvent* This, 5125 HANDLE *ph); 5126 5127 END_INTERFACE 5128 } ISynchronizeEventVtbl; 5129 interface ISynchronizeEvent { 5130 CONST_VTBL ISynchronizeEventVtbl* lpVtbl; 5131 }; 5132 5133 #ifdef COBJMACROS 5134 #ifndef WIDL_C_INLINE_WRAPPERS 5135 /*** IUnknown methods ***/ 5136 #define ISynchronizeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5137 #define ISynchronizeEvent_AddRef(This) (This)->lpVtbl->AddRef(This) 5138 #define ISynchronizeEvent_Release(This) (This)->lpVtbl->Release(This) 5139 /*** ISynchronizeHandle methods ***/ 5140 #define ISynchronizeEvent_GetHandle(This,ph) (This)->lpVtbl->GetHandle(This,ph) 5141 /*** ISynchronizeEvent methods ***/ 5142 #define ISynchronizeEvent_SetEventHandle(This,ph) (This)->lpVtbl->SetEventHandle(This,ph) 5143 #else 5144 /*** IUnknown methods ***/ 5145 static FORCEINLINE HRESULT ISynchronizeEvent_QueryInterface(ISynchronizeEvent* This,REFIID riid,void **ppvObject) { 5146 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5147 } 5148 static FORCEINLINE ULONG ISynchronizeEvent_AddRef(ISynchronizeEvent* This) { 5149 return This->lpVtbl->AddRef(This); 5150 } 5151 static FORCEINLINE ULONG ISynchronizeEvent_Release(ISynchronizeEvent* This) { 5152 return This->lpVtbl->Release(This); 5153 } 5154 /*** ISynchronizeHandle methods ***/ 5155 static FORCEINLINE HRESULT ISynchronizeEvent_GetHandle(ISynchronizeEvent* This,HANDLE *ph) { 5156 return This->lpVtbl->GetHandle(This,ph); 5157 } 5158 /*** ISynchronizeEvent methods ***/ 5159 static FORCEINLINE HRESULT ISynchronizeEvent_SetEventHandle(ISynchronizeEvent* This,HANDLE *ph) { 5160 return This->lpVtbl->SetEventHandle(This,ph); 5161 } 5162 #endif 5163 #endif 5164 5165 #endif 5166 5167 HRESULT STDMETHODCALLTYPE ISynchronizeEvent_SetEventHandle_Proxy( 5168 ISynchronizeEvent* This, 5169 HANDLE *ph); 5170 void __RPC_STUB ISynchronizeEvent_SetEventHandle_Stub( 5171 IRpcStubBuffer* This, 5172 IRpcChannelBuffer* pRpcChannelBuffer, 5173 PRPC_MESSAGE pRpcMessage, 5174 DWORD* pdwStubPhase); 5175 5176 #endif /* __ISynchronizeEvent_INTERFACE_DEFINED__ */ 5177 5178 5179 /***************************************************************************** 5180 * ISynchronizeContainer interface 5181 */ 5182 #ifndef __ISynchronizeContainer_INTERFACE_DEFINED__ 5183 #define __ISynchronizeContainer_INTERFACE_DEFINED__ 5184 5185 DEFINE_GUID(IID_ISynchronizeContainer, 0x00000033, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5186 #if defined(__cplusplus) && !defined(CINTERFACE) 5187 MIDL_INTERFACE("00000033-0000-0000-c000-000000000046") 5188 ISynchronizeContainer : public IUnknown 5189 { 5190 virtual HRESULT STDMETHODCALLTYPE AddSynchronize( 5191 ISynchronize *pSync) = 0; 5192 5193 virtual HRESULT STDMETHODCALLTYPE WaitMultiple( 5194 DWORD dwFlags, 5195 DWORD dwTimeOut, 5196 ISynchronize **ppSync) = 0; 5197 5198 }; 5199 #ifdef __CRT_UUID_DECL 5200 __CRT_UUID_DECL(ISynchronizeContainer, 0x00000033, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5201 #endif 5202 #else 5203 typedef struct ISynchronizeContainerVtbl { 5204 BEGIN_INTERFACE 5205 5206 /*** IUnknown methods ***/ 5207 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5208 ISynchronizeContainer* This, 5209 REFIID riid, 5210 void **ppvObject); 5211 5212 ULONG (STDMETHODCALLTYPE *AddRef)( 5213 ISynchronizeContainer* This); 5214 5215 ULONG (STDMETHODCALLTYPE *Release)( 5216 ISynchronizeContainer* This); 5217 5218 /*** ISynchronizeContainer methods ***/ 5219 HRESULT (STDMETHODCALLTYPE *AddSynchronize)( 5220 ISynchronizeContainer* This, 5221 ISynchronize *pSync); 5222 5223 HRESULT (STDMETHODCALLTYPE *WaitMultiple)( 5224 ISynchronizeContainer* This, 5225 DWORD dwFlags, 5226 DWORD dwTimeOut, 5227 ISynchronize **ppSync); 5228 5229 END_INTERFACE 5230 } ISynchronizeContainerVtbl; 5231 interface ISynchronizeContainer { 5232 CONST_VTBL ISynchronizeContainerVtbl* lpVtbl; 5233 }; 5234 5235 #ifdef COBJMACROS 5236 #ifndef WIDL_C_INLINE_WRAPPERS 5237 /*** IUnknown methods ***/ 5238 #define ISynchronizeContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5239 #define ISynchronizeContainer_AddRef(This) (This)->lpVtbl->AddRef(This) 5240 #define ISynchronizeContainer_Release(This) (This)->lpVtbl->Release(This) 5241 /*** ISynchronizeContainer methods ***/ 5242 #define ISynchronizeContainer_AddSynchronize(This,pSync) (This)->lpVtbl->AddSynchronize(This,pSync) 5243 #define ISynchronizeContainer_WaitMultiple(This,dwFlags,dwTimeOut,ppSync) (This)->lpVtbl->WaitMultiple(This,dwFlags,dwTimeOut,ppSync) 5244 #else 5245 /*** IUnknown methods ***/ 5246 static FORCEINLINE HRESULT ISynchronizeContainer_QueryInterface(ISynchronizeContainer* This,REFIID riid,void **ppvObject) { 5247 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5248 } 5249 static FORCEINLINE ULONG ISynchronizeContainer_AddRef(ISynchronizeContainer* This) { 5250 return This->lpVtbl->AddRef(This); 5251 } 5252 static FORCEINLINE ULONG ISynchronizeContainer_Release(ISynchronizeContainer* This) { 5253 return This->lpVtbl->Release(This); 5254 } 5255 /*** ISynchronizeContainer methods ***/ 5256 static FORCEINLINE HRESULT ISynchronizeContainer_AddSynchronize(ISynchronizeContainer* This,ISynchronize *pSync) { 5257 return This->lpVtbl->AddSynchronize(This,pSync); 5258 } 5259 static FORCEINLINE HRESULT ISynchronizeContainer_WaitMultiple(ISynchronizeContainer* This,DWORD dwFlags,DWORD dwTimeOut,ISynchronize **ppSync) { 5260 return This->lpVtbl->WaitMultiple(This,dwFlags,dwTimeOut,ppSync); 5261 } 5262 #endif 5263 #endif 5264 5265 #endif 5266 5267 HRESULT STDMETHODCALLTYPE ISynchronizeContainer_AddSynchronize_Proxy( 5268 ISynchronizeContainer* This, 5269 ISynchronize *pSync); 5270 void __RPC_STUB ISynchronizeContainer_AddSynchronize_Stub( 5271 IRpcStubBuffer* This, 5272 IRpcChannelBuffer* pRpcChannelBuffer, 5273 PRPC_MESSAGE pRpcMessage, 5274 DWORD* pdwStubPhase); 5275 HRESULT STDMETHODCALLTYPE ISynchronizeContainer_WaitMultiple_Proxy( 5276 ISynchronizeContainer* This, 5277 DWORD dwFlags, 5278 DWORD dwTimeOut, 5279 ISynchronize **ppSync); 5280 void __RPC_STUB ISynchronizeContainer_WaitMultiple_Stub( 5281 IRpcStubBuffer* This, 5282 IRpcChannelBuffer* pRpcChannelBuffer, 5283 PRPC_MESSAGE pRpcMessage, 5284 DWORD* pdwStubPhase); 5285 5286 #endif /* __ISynchronizeContainer_INTERFACE_DEFINED__ */ 5287 5288 5289 /***************************************************************************** 5290 * ISynchronizeMutex interface 5291 */ 5292 #ifndef __ISynchronizeMutex_INTERFACE_DEFINED__ 5293 #define __ISynchronizeMutex_INTERFACE_DEFINED__ 5294 5295 DEFINE_GUID(IID_ISynchronizeMutex, 0x00000025, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5296 #if defined(__cplusplus) && !defined(CINTERFACE) 5297 MIDL_INTERFACE("00000025-0000-0000-c000-000000000046") 5298 ISynchronizeMutex : public ISynchronize 5299 { 5300 virtual HRESULT STDMETHODCALLTYPE ReleaseMutex( 5301 ) = 0; 5302 5303 }; 5304 #ifdef __CRT_UUID_DECL 5305 __CRT_UUID_DECL(ISynchronizeMutex, 0x00000025, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5306 #endif 5307 #else 5308 typedef struct ISynchronizeMutexVtbl { 5309 BEGIN_INTERFACE 5310 5311 /*** IUnknown methods ***/ 5312 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5313 ISynchronizeMutex* This, 5314 REFIID riid, 5315 void **ppvObject); 5316 5317 ULONG (STDMETHODCALLTYPE *AddRef)( 5318 ISynchronizeMutex* This); 5319 5320 ULONG (STDMETHODCALLTYPE *Release)( 5321 ISynchronizeMutex* This); 5322 5323 /*** ISynchronize methods ***/ 5324 HRESULT (STDMETHODCALLTYPE *Wait)( 5325 ISynchronizeMutex* This, 5326 DWORD dwFlags, 5327 DWORD dwMilliseconds); 5328 5329 HRESULT (STDMETHODCALLTYPE *Signal)( 5330 ISynchronizeMutex* This); 5331 5332 HRESULT (STDMETHODCALLTYPE *Reset)( 5333 ISynchronizeMutex* This); 5334 5335 /*** ISynchronizeMutex methods ***/ 5336 HRESULT (STDMETHODCALLTYPE *ReleaseMutex)( 5337 ISynchronizeMutex* This); 5338 5339 END_INTERFACE 5340 } ISynchronizeMutexVtbl; 5341 interface ISynchronizeMutex { 5342 CONST_VTBL ISynchronizeMutexVtbl* lpVtbl; 5343 }; 5344 5345 #ifdef COBJMACROS 5346 #ifndef WIDL_C_INLINE_WRAPPERS 5347 /*** IUnknown methods ***/ 5348 #define ISynchronizeMutex_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5349 #define ISynchronizeMutex_AddRef(This) (This)->lpVtbl->AddRef(This) 5350 #define ISynchronizeMutex_Release(This) (This)->lpVtbl->Release(This) 5351 /*** ISynchronize methods ***/ 5352 #define ISynchronizeMutex_Wait(This,dwFlags,dwMilliseconds) (This)->lpVtbl->Wait(This,dwFlags,dwMilliseconds) 5353 #define ISynchronizeMutex_Signal(This) (This)->lpVtbl->Signal(This) 5354 #define ISynchronizeMutex_Reset(This) (This)->lpVtbl->Reset(This) 5355 /*** ISynchronizeMutex methods ***/ 5356 #define ISynchronizeMutex_ReleaseMutex(This) (This)->lpVtbl->ReleaseMutex(This) 5357 #else 5358 /*** IUnknown methods ***/ 5359 static FORCEINLINE HRESULT ISynchronizeMutex_QueryInterface(ISynchronizeMutex* This,REFIID riid,void **ppvObject) { 5360 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5361 } 5362 static FORCEINLINE ULONG ISynchronizeMutex_AddRef(ISynchronizeMutex* This) { 5363 return This->lpVtbl->AddRef(This); 5364 } 5365 static FORCEINLINE ULONG ISynchronizeMutex_Release(ISynchronizeMutex* This) { 5366 return This->lpVtbl->Release(This); 5367 } 5368 /*** ISynchronize methods ***/ 5369 static FORCEINLINE HRESULT ISynchronizeMutex_Wait(ISynchronizeMutex* This,DWORD dwFlags,DWORD dwMilliseconds) { 5370 return This->lpVtbl->Wait(This,dwFlags,dwMilliseconds); 5371 } 5372 static FORCEINLINE HRESULT ISynchronizeMutex_Signal(ISynchronizeMutex* This) { 5373 return This->lpVtbl->Signal(This); 5374 } 5375 static FORCEINLINE HRESULT ISynchronizeMutex_Reset(ISynchronizeMutex* This) { 5376 return This->lpVtbl->Reset(This); 5377 } 5378 /*** ISynchronizeMutex methods ***/ 5379 static FORCEINLINE HRESULT ISynchronizeMutex_ReleaseMutex(ISynchronizeMutex* This) { 5380 return This->lpVtbl->ReleaseMutex(This); 5381 } 5382 #endif 5383 #endif 5384 5385 #endif 5386 5387 HRESULT STDMETHODCALLTYPE ISynchronizeMutex_ReleaseMutex_Proxy( 5388 ISynchronizeMutex* This); 5389 void __RPC_STUB ISynchronizeMutex_ReleaseMutex_Stub( 5390 IRpcStubBuffer* This, 5391 IRpcChannelBuffer* pRpcChannelBuffer, 5392 PRPC_MESSAGE pRpcMessage, 5393 DWORD* pdwStubPhase); 5394 5395 #endif /* __ISynchronizeMutex_INTERFACE_DEFINED__ */ 5396 5397 5398 /***************************************************************************** 5399 * ICancelMethodCalls interface 5400 */ 5401 #ifndef __ICancelMethodCalls_INTERFACE_DEFINED__ 5402 #define __ICancelMethodCalls_INTERFACE_DEFINED__ 5403 5404 typedef ICancelMethodCalls *LPCANCELMETHODCALLS; 5405 5406 DEFINE_GUID(IID_ICancelMethodCalls, 0x00000029, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5407 #if defined(__cplusplus) && !defined(CINTERFACE) 5408 MIDL_INTERFACE("00000029-0000-0000-c000-000000000046") 5409 ICancelMethodCalls : public IUnknown 5410 { 5411 virtual HRESULT STDMETHODCALLTYPE Cancel( 5412 ULONG ulSeconds) = 0; 5413 5414 virtual HRESULT STDMETHODCALLTYPE TestCancel( 5415 ) = 0; 5416 5417 }; 5418 #ifdef __CRT_UUID_DECL 5419 __CRT_UUID_DECL(ICancelMethodCalls, 0x00000029, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5420 #endif 5421 #else 5422 typedef struct ICancelMethodCallsVtbl { 5423 BEGIN_INTERFACE 5424 5425 /*** IUnknown methods ***/ 5426 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5427 ICancelMethodCalls* This, 5428 REFIID riid, 5429 void **ppvObject); 5430 5431 ULONG (STDMETHODCALLTYPE *AddRef)( 5432 ICancelMethodCalls* This); 5433 5434 ULONG (STDMETHODCALLTYPE *Release)( 5435 ICancelMethodCalls* This); 5436 5437 /*** ICancelMethodCalls methods ***/ 5438 HRESULT (STDMETHODCALLTYPE *Cancel)( 5439 ICancelMethodCalls* This, 5440 ULONG ulSeconds); 5441 5442 HRESULT (STDMETHODCALLTYPE *TestCancel)( 5443 ICancelMethodCalls* This); 5444 5445 END_INTERFACE 5446 } ICancelMethodCallsVtbl; 5447 interface ICancelMethodCalls { 5448 CONST_VTBL ICancelMethodCallsVtbl* lpVtbl; 5449 }; 5450 5451 #ifdef COBJMACROS 5452 #ifndef WIDL_C_INLINE_WRAPPERS 5453 /*** IUnknown methods ***/ 5454 #define ICancelMethodCalls_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5455 #define ICancelMethodCalls_AddRef(This) (This)->lpVtbl->AddRef(This) 5456 #define ICancelMethodCalls_Release(This) (This)->lpVtbl->Release(This) 5457 /*** ICancelMethodCalls methods ***/ 5458 #define ICancelMethodCalls_Cancel(This,ulSeconds) (This)->lpVtbl->Cancel(This,ulSeconds) 5459 #define ICancelMethodCalls_TestCancel(This) (This)->lpVtbl->TestCancel(This) 5460 #else 5461 /*** IUnknown methods ***/ 5462 static FORCEINLINE HRESULT ICancelMethodCalls_QueryInterface(ICancelMethodCalls* This,REFIID riid,void **ppvObject) { 5463 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5464 } 5465 static FORCEINLINE ULONG ICancelMethodCalls_AddRef(ICancelMethodCalls* This) { 5466 return This->lpVtbl->AddRef(This); 5467 } 5468 static FORCEINLINE ULONG ICancelMethodCalls_Release(ICancelMethodCalls* This) { 5469 return This->lpVtbl->Release(This); 5470 } 5471 /*** ICancelMethodCalls methods ***/ 5472 static FORCEINLINE HRESULT ICancelMethodCalls_Cancel(ICancelMethodCalls* This,ULONG ulSeconds) { 5473 return This->lpVtbl->Cancel(This,ulSeconds); 5474 } 5475 static FORCEINLINE HRESULT ICancelMethodCalls_TestCancel(ICancelMethodCalls* This) { 5476 return This->lpVtbl->TestCancel(This); 5477 } 5478 #endif 5479 #endif 5480 5481 #endif 5482 5483 HRESULT STDMETHODCALLTYPE ICancelMethodCalls_Cancel_Proxy( 5484 ICancelMethodCalls* This, 5485 ULONG ulSeconds); 5486 void __RPC_STUB ICancelMethodCalls_Cancel_Stub( 5487 IRpcStubBuffer* This, 5488 IRpcChannelBuffer* pRpcChannelBuffer, 5489 PRPC_MESSAGE pRpcMessage, 5490 DWORD* pdwStubPhase); 5491 HRESULT STDMETHODCALLTYPE ICancelMethodCalls_TestCancel_Proxy( 5492 ICancelMethodCalls* This); 5493 void __RPC_STUB ICancelMethodCalls_TestCancel_Stub( 5494 IRpcStubBuffer* This, 5495 IRpcChannelBuffer* pRpcChannelBuffer, 5496 PRPC_MESSAGE pRpcMessage, 5497 DWORD* pdwStubPhase); 5498 5499 #endif /* __ICancelMethodCalls_INTERFACE_DEFINED__ */ 5500 5501 5502 /***************************************************************************** 5503 * IAsyncManager interface 5504 */ 5505 #ifndef __IAsyncManager_INTERFACE_DEFINED__ 5506 #define __IAsyncManager_INTERFACE_DEFINED__ 5507 5508 typedef enum tagDCOM_CALL_STATE { 5509 DCOM_NONE = 0x0, 5510 DCOM_CALL_COMPLETE = 0x1, 5511 DCOM_CALL_CANCELED = 0x2 5512 } DCOM_CALL_STATE; 5513 5514 DEFINE_GUID(IID_IAsyncManager, 0x0000002a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5515 #if defined(__cplusplus) && !defined(CINTERFACE) 5516 MIDL_INTERFACE("0000002a-0000-0000-c000-000000000046") 5517 IAsyncManager : public IUnknown 5518 { 5519 virtual HRESULT STDMETHODCALLTYPE CompleteCall( 5520 HRESULT Result) = 0; 5521 5522 virtual HRESULT STDMETHODCALLTYPE GetCallContext( 5523 REFIID riid, 5524 void **pInterface) = 0; 5525 5526 virtual HRESULT STDMETHODCALLTYPE GetState( 5527 ULONG *pulStateFlags) = 0; 5528 5529 }; 5530 #ifdef __CRT_UUID_DECL 5531 __CRT_UUID_DECL(IAsyncManager, 0x0000002a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5532 #endif 5533 #else 5534 typedef struct IAsyncManagerVtbl { 5535 BEGIN_INTERFACE 5536 5537 /*** IUnknown methods ***/ 5538 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5539 IAsyncManager* This, 5540 REFIID riid, 5541 void **ppvObject); 5542 5543 ULONG (STDMETHODCALLTYPE *AddRef)( 5544 IAsyncManager* This); 5545 5546 ULONG (STDMETHODCALLTYPE *Release)( 5547 IAsyncManager* This); 5548 5549 /*** IAsyncManager methods ***/ 5550 HRESULT (STDMETHODCALLTYPE *CompleteCall)( 5551 IAsyncManager* This, 5552 HRESULT Result); 5553 5554 HRESULT (STDMETHODCALLTYPE *GetCallContext)( 5555 IAsyncManager* This, 5556 REFIID riid, 5557 void **pInterface); 5558 5559 HRESULT (STDMETHODCALLTYPE *GetState)( 5560 IAsyncManager* This, 5561 ULONG *pulStateFlags); 5562 5563 END_INTERFACE 5564 } IAsyncManagerVtbl; 5565 interface IAsyncManager { 5566 CONST_VTBL IAsyncManagerVtbl* lpVtbl; 5567 }; 5568 5569 #ifdef COBJMACROS 5570 #ifndef WIDL_C_INLINE_WRAPPERS 5571 /*** IUnknown methods ***/ 5572 #define IAsyncManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5573 #define IAsyncManager_AddRef(This) (This)->lpVtbl->AddRef(This) 5574 #define IAsyncManager_Release(This) (This)->lpVtbl->Release(This) 5575 /*** IAsyncManager methods ***/ 5576 #define IAsyncManager_CompleteCall(This,Result) (This)->lpVtbl->CompleteCall(This,Result) 5577 #define IAsyncManager_GetCallContext(This,riid,pInterface) (This)->lpVtbl->GetCallContext(This,riid,pInterface) 5578 #define IAsyncManager_GetState(This,pulStateFlags) (This)->lpVtbl->GetState(This,pulStateFlags) 5579 #else 5580 /*** IUnknown methods ***/ 5581 static FORCEINLINE HRESULT IAsyncManager_QueryInterface(IAsyncManager* This,REFIID riid,void **ppvObject) { 5582 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5583 } 5584 static FORCEINLINE ULONG IAsyncManager_AddRef(IAsyncManager* This) { 5585 return This->lpVtbl->AddRef(This); 5586 } 5587 static FORCEINLINE ULONG IAsyncManager_Release(IAsyncManager* This) { 5588 return This->lpVtbl->Release(This); 5589 } 5590 /*** IAsyncManager methods ***/ 5591 static FORCEINLINE HRESULT IAsyncManager_CompleteCall(IAsyncManager* This,HRESULT Result) { 5592 return This->lpVtbl->CompleteCall(This,Result); 5593 } 5594 static FORCEINLINE HRESULT IAsyncManager_GetCallContext(IAsyncManager* This,REFIID riid,void **pInterface) { 5595 return This->lpVtbl->GetCallContext(This,riid,pInterface); 5596 } 5597 static FORCEINLINE HRESULT IAsyncManager_GetState(IAsyncManager* This,ULONG *pulStateFlags) { 5598 return This->lpVtbl->GetState(This,pulStateFlags); 5599 } 5600 #endif 5601 #endif 5602 5603 #endif 5604 5605 HRESULT STDMETHODCALLTYPE IAsyncManager_CompleteCall_Proxy( 5606 IAsyncManager* This, 5607 HRESULT Result); 5608 void __RPC_STUB IAsyncManager_CompleteCall_Stub( 5609 IRpcStubBuffer* This, 5610 IRpcChannelBuffer* pRpcChannelBuffer, 5611 PRPC_MESSAGE pRpcMessage, 5612 DWORD* pdwStubPhase); 5613 HRESULT STDMETHODCALLTYPE IAsyncManager_GetCallContext_Proxy( 5614 IAsyncManager* This, 5615 REFIID riid, 5616 void **pInterface); 5617 void __RPC_STUB IAsyncManager_GetCallContext_Stub( 5618 IRpcStubBuffer* This, 5619 IRpcChannelBuffer* pRpcChannelBuffer, 5620 PRPC_MESSAGE pRpcMessage, 5621 DWORD* pdwStubPhase); 5622 HRESULT STDMETHODCALLTYPE IAsyncManager_GetState_Proxy( 5623 IAsyncManager* This, 5624 ULONG *pulStateFlags); 5625 void __RPC_STUB IAsyncManager_GetState_Stub( 5626 IRpcStubBuffer* This, 5627 IRpcChannelBuffer* pRpcChannelBuffer, 5628 PRPC_MESSAGE pRpcMessage, 5629 DWORD* pdwStubPhase); 5630 5631 #endif /* __IAsyncManager_INTERFACE_DEFINED__ */ 5632 5633 5634 /***************************************************************************** 5635 * ICallFactory interface 5636 */ 5637 #ifndef __ICallFactory_INTERFACE_DEFINED__ 5638 #define __ICallFactory_INTERFACE_DEFINED__ 5639 5640 DEFINE_GUID(IID_ICallFactory, 0x1c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d); 5641 #if defined(__cplusplus) && !defined(CINTERFACE) 5642 MIDL_INTERFACE("1c733a30-2a1c-11ce-ade5-00aa0044773d") 5643 ICallFactory : public IUnknown 5644 { 5645 virtual HRESULT STDMETHODCALLTYPE CreateCall( 5646 REFIID riid, 5647 IUnknown *pCtrlUnk, 5648 REFIID riid2, 5649 IUnknown **ppv) = 0; 5650 5651 }; 5652 #ifdef __CRT_UUID_DECL 5653 __CRT_UUID_DECL(ICallFactory, 0x1c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d) 5654 #endif 5655 #else 5656 typedef struct ICallFactoryVtbl { 5657 BEGIN_INTERFACE 5658 5659 /*** IUnknown methods ***/ 5660 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5661 ICallFactory* This, 5662 REFIID riid, 5663 void **ppvObject); 5664 5665 ULONG (STDMETHODCALLTYPE *AddRef)( 5666 ICallFactory* This); 5667 5668 ULONG (STDMETHODCALLTYPE *Release)( 5669 ICallFactory* This); 5670 5671 /*** ICallFactory methods ***/ 5672 HRESULT (STDMETHODCALLTYPE *CreateCall)( 5673 ICallFactory* This, 5674 REFIID riid, 5675 IUnknown *pCtrlUnk, 5676 REFIID riid2, 5677 IUnknown **ppv); 5678 5679 END_INTERFACE 5680 } ICallFactoryVtbl; 5681 interface ICallFactory { 5682 CONST_VTBL ICallFactoryVtbl* lpVtbl; 5683 }; 5684 5685 #ifdef COBJMACROS 5686 #ifndef WIDL_C_INLINE_WRAPPERS 5687 /*** IUnknown methods ***/ 5688 #define ICallFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5689 #define ICallFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 5690 #define ICallFactory_Release(This) (This)->lpVtbl->Release(This) 5691 /*** ICallFactory methods ***/ 5692 #define ICallFactory_CreateCall(This,riid,pCtrlUnk,riid2,ppv) (This)->lpVtbl->CreateCall(This,riid,pCtrlUnk,riid2,ppv) 5693 #else 5694 /*** IUnknown methods ***/ 5695 static FORCEINLINE HRESULT ICallFactory_QueryInterface(ICallFactory* This,REFIID riid,void **ppvObject) { 5696 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5697 } 5698 static FORCEINLINE ULONG ICallFactory_AddRef(ICallFactory* This) { 5699 return This->lpVtbl->AddRef(This); 5700 } 5701 static FORCEINLINE ULONG ICallFactory_Release(ICallFactory* This) { 5702 return This->lpVtbl->Release(This); 5703 } 5704 /*** ICallFactory methods ***/ 5705 static FORCEINLINE HRESULT ICallFactory_CreateCall(ICallFactory* This,REFIID riid,IUnknown *pCtrlUnk,REFIID riid2,IUnknown **ppv) { 5706 return This->lpVtbl->CreateCall(This,riid,pCtrlUnk,riid2,ppv); 5707 } 5708 #endif 5709 #endif 5710 5711 #endif 5712 5713 HRESULT STDMETHODCALLTYPE ICallFactory_CreateCall_Proxy( 5714 ICallFactory* This, 5715 REFIID riid, 5716 IUnknown *pCtrlUnk, 5717 REFIID riid2, 5718 IUnknown **ppv); 5719 void __RPC_STUB ICallFactory_CreateCall_Stub( 5720 IRpcStubBuffer* This, 5721 IRpcChannelBuffer* pRpcChannelBuffer, 5722 PRPC_MESSAGE pRpcMessage, 5723 DWORD* pdwStubPhase); 5724 5725 #endif /* __ICallFactory_INTERFACE_DEFINED__ */ 5726 5727 5728 /***************************************************************************** 5729 * IRpcHelper interface 5730 */ 5731 #ifndef __IRpcHelper_INTERFACE_DEFINED__ 5732 #define __IRpcHelper_INTERFACE_DEFINED__ 5733 5734 DEFINE_GUID(IID_IRpcHelper, 0x00000149, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5735 #if defined(__cplusplus) && !defined(CINTERFACE) 5736 MIDL_INTERFACE("00000149-0000-0000-c000-000000000046") 5737 IRpcHelper : public IUnknown 5738 { 5739 virtual HRESULT STDMETHODCALLTYPE GetDCOMProtocolVersion( 5740 DWORD *pComVersion) = 0; 5741 5742 virtual HRESULT STDMETHODCALLTYPE GetIIDFromOBJREF( 5743 void *pObjRef, 5744 IID **piid) = 0; 5745 5746 }; 5747 #ifdef __CRT_UUID_DECL 5748 __CRT_UUID_DECL(IRpcHelper, 0x00000149, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5749 #endif 5750 #else 5751 typedef struct IRpcHelperVtbl { 5752 BEGIN_INTERFACE 5753 5754 /*** IUnknown methods ***/ 5755 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5756 IRpcHelper* This, 5757 REFIID riid, 5758 void **ppvObject); 5759 5760 ULONG (STDMETHODCALLTYPE *AddRef)( 5761 IRpcHelper* This); 5762 5763 ULONG (STDMETHODCALLTYPE *Release)( 5764 IRpcHelper* This); 5765 5766 /*** IRpcHelper methods ***/ 5767 HRESULT (STDMETHODCALLTYPE *GetDCOMProtocolVersion)( 5768 IRpcHelper* This, 5769 DWORD *pComVersion); 5770 5771 HRESULT (STDMETHODCALLTYPE *GetIIDFromOBJREF)( 5772 IRpcHelper* This, 5773 void *pObjRef, 5774 IID **piid); 5775 5776 END_INTERFACE 5777 } IRpcHelperVtbl; 5778 interface IRpcHelper { 5779 CONST_VTBL IRpcHelperVtbl* lpVtbl; 5780 }; 5781 5782 #ifdef COBJMACROS 5783 #ifndef WIDL_C_INLINE_WRAPPERS 5784 /*** IUnknown methods ***/ 5785 #define IRpcHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5786 #define IRpcHelper_AddRef(This) (This)->lpVtbl->AddRef(This) 5787 #define IRpcHelper_Release(This) (This)->lpVtbl->Release(This) 5788 /*** IRpcHelper methods ***/ 5789 #define IRpcHelper_GetDCOMProtocolVersion(This,pComVersion) (This)->lpVtbl->GetDCOMProtocolVersion(This,pComVersion) 5790 #define IRpcHelper_GetIIDFromOBJREF(This,pObjRef,piid) (This)->lpVtbl->GetIIDFromOBJREF(This,pObjRef,piid) 5791 #else 5792 /*** IUnknown methods ***/ 5793 static FORCEINLINE HRESULT IRpcHelper_QueryInterface(IRpcHelper* This,REFIID riid,void **ppvObject) { 5794 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5795 } 5796 static FORCEINLINE ULONG IRpcHelper_AddRef(IRpcHelper* This) { 5797 return This->lpVtbl->AddRef(This); 5798 } 5799 static FORCEINLINE ULONG IRpcHelper_Release(IRpcHelper* This) { 5800 return This->lpVtbl->Release(This); 5801 } 5802 /*** IRpcHelper methods ***/ 5803 static FORCEINLINE HRESULT IRpcHelper_GetDCOMProtocolVersion(IRpcHelper* This,DWORD *pComVersion) { 5804 return This->lpVtbl->GetDCOMProtocolVersion(This,pComVersion); 5805 } 5806 static FORCEINLINE HRESULT IRpcHelper_GetIIDFromOBJREF(IRpcHelper* This,void *pObjRef,IID **piid) { 5807 return This->lpVtbl->GetIIDFromOBJREF(This,pObjRef,piid); 5808 } 5809 #endif 5810 #endif 5811 5812 #endif 5813 5814 HRESULT STDMETHODCALLTYPE IRpcHelper_GetDCOMProtocolVersion_Proxy( 5815 IRpcHelper* This, 5816 DWORD *pComVersion); 5817 void __RPC_STUB IRpcHelper_GetDCOMProtocolVersion_Stub( 5818 IRpcStubBuffer* This, 5819 IRpcChannelBuffer* pRpcChannelBuffer, 5820 PRPC_MESSAGE pRpcMessage, 5821 DWORD* pdwStubPhase); 5822 HRESULT STDMETHODCALLTYPE IRpcHelper_GetIIDFromOBJREF_Proxy( 5823 IRpcHelper* This, 5824 void *pObjRef, 5825 IID **piid); 5826 void __RPC_STUB IRpcHelper_GetIIDFromOBJREF_Stub( 5827 IRpcStubBuffer* This, 5828 IRpcChannelBuffer* pRpcChannelBuffer, 5829 PRPC_MESSAGE pRpcMessage, 5830 DWORD* pdwStubPhase); 5831 5832 #endif /* __IRpcHelper_INTERFACE_DEFINED__ */ 5833 5834 5835 /***************************************************************************** 5836 * IReleaseMarshalBuffers interface 5837 */ 5838 #ifndef __IReleaseMarshalBuffers_INTERFACE_DEFINED__ 5839 #define __IReleaseMarshalBuffers_INTERFACE_DEFINED__ 5840 5841 DEFINE_GUID(IID_IReleaseMarshalBuffers, 0xeb0cb9e8, 0x7996, 0x11d2, 0x87,0x2e, 0x00,0x00,0xf8,0x08,0x08,0x59); 5842 #if defined(__cplusplus) && !defined(CINTERFACE) 5843 MIDL_INTERFACE("eb0cb9e8-7996-11d2-872e-0000f8080859") 5844 IReleaseMarshalBuffers : public IUnknown 5845 { 5846 virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalBuffer( 5847 RPCOLEMESSAGE *pMsg, 5848 DWORD dwFlags, 5849 IUnknown *pChnl) = 0; 5850 5851 }; 5852 #ifdef __CRT_UUID_DECL 5853 __CRT_UUID_DECL(IReleaseMarshalBuffers, 0xeb0cb9e8, 0x7996, 0x11d2, 0x87,0x2e, 0x00,0x00,0xf8,0x08,0x08,0x59) 5854 #endif 5855 #else 5856 typedef struct IReleaseMarshalBuffersVtbl { 5857 BEGIN_INTERFACE 5858 5859 /*** IUnknown methods ***/ 5860 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5861 IReleaseMarshalBuffers* This, 5862 REFIID riid, 5863 void **ppvObject); 5864 5865 ULONG (STDMETHODCALLTYPE *AddRef)( 5866 IReleaseMarshalBuffers* This); 5867 5868 ULONG (STDMETHODCALLTYPE *Release)( 5869 IReleaseMarshalBuffers* This); 5870 5871 /*** IReleaseMarshalBuffers methods ***/ 5872 HRESULT (STDMETHODCALLTYPE *ReleaseMarshalBuffer)( 5873 IReleaseMarshalBuffers* This, 5874 RPCOLEMESSAGE *pMsg, 5875 DWORD dwFlags, 5876 IUnknown *pChnl); 5877 5878 END_INTERFACE 5879 } IReleaseMarshalBuffersVtbl; 5880 interface IReleaseMarshalBuffers { 5881 CONST_VTBL IReleaseMarshalBuffersVtbl* lpVtbl; 5882 }; 5883 5884 #ifdef COBJMACROS 5885 #ifndef WIDL_C_INLINE_WRAPPERS 5886 /*** IUnknown methods ***/ 5887 #define IReleaseMarshalBuffers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5888 #define IReleaseMarshalBuffers_AddRef(This) (This)->lpVtbl->AddRef(This) 5889 #define IReleaseMarshalBuffers_Release(This) (This)->lpVtbl->Release(This) 5890 /*** IReleaseMarshalBuffers methods ***/ 5891 #define IReleaseMarshalBuffers_ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl) (This)->lpVtbl->ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl) 5892 #else 5893 /*** IUnknown methods ***/ 5894 static FORCEINLINE HRESULT IReleaseMarshalBuffers_QueryInterface(IReleaseMarshalBuffers* This,REFIID riid,void **ppvObject) { 5895 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5896 } 5897 static FORCEINLINE ULONG IReleaseMarshalBuffers_AddRef(IReleaseMarshalBuffers* This) { 5898 return This->lpVtbl->AddRef(This); 5899 } 5900 static FORCEINLINE ULONG IReleaseMarshalBuffers_Release(IReleaseMarshalBuffers* This) { 5901 return This->lpVtbl->Release(This); 5902 } 5903 /*** IReleaseMarshalBuffers methods ***/ 5904 static FORCEINLINE HRESULT IReleaseMarshalBuffers_ReleaseMarshalBuffer(IReleaseMarshalBuffers* This,RPCOLEMESSAGE *pMsg,DWORD dwFlags,IUnknown *pChnl) { 5905 return This->lpVtbl->ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl); 5906 } 5907 #endif 5908 #endif 5909 5910 #endif 5911 5912 HRESULT STDMETHODCALLTYPE IReleaseMarshalBuffers_ReleaseMarshalBuffer_Proxy( 5913 IReleaseMarshalBuffers* This, 5914 RPCOLEMESSAGE *pMsg, 5915 DWORD dwFlags, 5916 IUnknown *pChnl); 5917 void __RPC_STUB IReleaseMarshalBuffers_ReleaseMarshalBuffer_Stub( 5918 IRpcStubBuffer* This, 5919 IRpcChannelBuffer* pRpcChannelBuffer, 5920 PRPC_MESSAGE pRpcMessage, 5921 DWORD* pdwStubPhase); 5922 5923 #endif /* __IReleaseMarshalBuffers_INTERFACE_DEFINED__ */ 5924 5925 5926 /***************************************************************************** 5927 * IWaitMultiple interface 5928 */ 5929 #ifndef __IWaitMultiple_INTERFACE_DEFINED__ 5930 #define __IWaitMultiple_INTERFACE_DEFINED__ 5931 5932 DEFINE_GUID(IID_IWaitMultiple, 0x0000002b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5933 #if defined(__cplusplus) && !defined(CINTERFACE) 5934 MIDL_INTERFACE("0000002b-0000-0000-c000-000000000046") 5935 IWaitMultiple : public IUnknown 5936 { 5937 virtual HRESULT STDMETHODCALLTYPE WaitMultiple( 5938 DWORD timeout, 5939 ISynchronize **pSync) = 0; 5940 5941 virtual HRESULT STDMETHODCALLTYPE AddSynchronize( 5942 ISynchronize *pSync) = 0; 5943 5944 }; 5945 #ifdef __CRT_UUID_DECL 5946 __CRT_UUID_DECL(IWaitMultiple, 0x0000002b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5947 #endif 5948 #else 5949 typedef struct IWaitMultipleVtbl { 5950 BEGIN_INTERFACE 5951 5952 /*** IUnknown methods ***/ 5953 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5954 IWaitMultiple* This, 5955 REFIID riid, 5956 void **ppvObject); 5957 5958 ULONG (STDMETHODCALLTYPE *AddRef)( 5959 IWaitMultiple* This); 5960 5961 ULONG (STDMETHODCALLTYPE *Release)( 5962 IWaitMultiple* This); 5963 5964 /*** IWaitMultiple methods ***/ 5965 HRESULT (STDMETHODCALLTYPE *WaitMultiple)( 5966 IWaitMultiple* This, 5967 DWORD timeout, 5968 ISynchronize **pSync); 5969 5970 HRESULT (STDMETHODCALLTYPE *AddSynchronize)( 5971 IWaitMultiple* This, 5972 ISynchronize *pSync); 5973 5974 END_INTERFACE 5975 } IWaitMultipleVtbl; 5976 interface IWaitMultiple { 5977 CONST_VTBL IWaitMultipleVtbl* lpVtbl; 5978 }; 5979 5980 #ifdef COBJMACROS 5981 #ifndef WIDL_C_INLINE_WRAPPERS 5982 /*** IUnknown methods ***/ 5983 #define IWaitMultiple_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5984 #define IWaitMultiple_AddRef(This) (This)->lpVtbl->AddRef(This) 5985 #define IWaitMultiple_Release(This) (This)->lpVtbl->Release(This) 5986 /*** IWaitMultiple methods ***/ 5987 #define IWaitMultiple_WaitMultiple(This,timeout,pSync) (This)->lpVtbl->WaitMultiple(This,timeout,pSync) 5988 #define IWaitMultiple_AddSynchronize(This,pSync) (This)->lpVtbl->AddSynchronize(This,pSync) 5989 #else 5990 /*** IUnknown methods ***/ 5991 static FORCEINLINE HRESULT IWaitMultiple_QueryInterface(IWaitMultiple* This,REFIID riid,void **ppvObject) { 5992 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5993 } 5994 static FORCEINLINE ULONG IWaitMultiple_AddRef(IWaitMultiple* This) { 5995 return This->lpVtbl->AddRef(This); 5996 } 5997 static FORCEINLINE ULONG IWaitMultiple_Release(IWaitMultiple* This) { 5998 return This->lpVtbl->Release(This); 5999 } 6000 /*** IWaitMultiple methods ***/ 6001 static FORCEINLINE HRESULT IWaitMultiple_WaitMultiple(IWaitMultiple* This,DWORD timeout,ISynchronize **pSync) { 6002 return This->lpVtbl->WaitMultiple(This,timeout,pSync); 6003 } 6004 static FORCEINLINE HRESULT IWaitMultiple_AddSynchronize(IWaitMultiple* This,ISynchronize *pSync) { 6005 return This->lpVtbl->AddSynchronize(This,pSync); 6006 } 6007 #endif 6008 #endif 6009 6010 #endif 6011 6012 HRESULT STDMETHODCALLTYPE IWaitMultiple_WaitMultiple_Proxy( 6013 IWaitMultiple* This, 6014 DWORD timeout, 6015 ISynchronize **pSync); 6016 void __RPC_STUB IWaitMultiple_WaitMultiple_Stub( 6017 IRpcStubBuffer* This, 6018 IRpcChannelBuffer* pRpcChannelBuffer, 6019 PRPC_MESSAGE pRpcMessage, 6020 DWORD* pdwStubPhase); 6021 HRESULT STDMETHODCALLTYPE IWaitMultiple_AddSynchronize_Proxy( 6022 IWaitMultiple* This, 6023 ISynchronize *pSync); 6024 void __RPC_STUB IWaitMultiple_AddSynchronize_Stub( 6025 IRpcStubBuffer* This, 6026 IRpcChannelBuffer* pRpcChannelBuffer, 6027 PRPC_MESSAGE pRpcMessage, 6028 DWORD* pdwStubPhase); 6029 6030 #endif /* __IWaitMultiple_INTERFACE_DEFINED__ */ 6031 6032 6033 /***************************************************************************** 6034 * IAddrTrackingControl interface 6035 */ 6036 #ifndef __IAddrTrackingControl_INTERFACE_DEFINED__ 6037 #define __IAddrTrackingControl_INTERFACE_DEFINED__ 6038 6039 typedef IAddrTrackingControl *LPADDRTRACKINGCONTROL; 6040 DEFINE_GUID(IID_IAddrTrackingControl, 0x00000147, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 6041 #if defined(__cplusplus) && !defined(CINTERFACE) 6042 MIDL_INTERFACE("00000147-0000-0000-c000-000000000046") 6043 IAddrTrackingControl : public IUnknown 6044 { 6045 virtual HRESULT STDMETHODCALLTYPE EnableCOMDynamicAddrTracking( 6046 ) = 0; 6047 6048 virtual HRESULT STDMETHODCALLTYPE DisableCOMDynamicAddrTracking( 6049 ) = 0; 6050 6051 }; 6052 #ifdef __CRT_UUID_DECL 6053 __CRT_UUID_DECL(IAddrTrackingControl, 0x00000147, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 6054 #endif 6055 #else 6056 typedef struct IAddrTrackingControlVtbl { 6057 BEGIN_INTERFACE 6058 6059 /*** IUnknown methods ***/ 6060 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6061 IAddrTrackingControl* This, 6062 REFIID riid, 6063 void **ppvObject); 6064 6065 ULONG (STDMETHODCALLTYPE *AddRef)( 6066 IAddrTrackingControl* This); 6067 6068 ULONG (STDMETHODCALLTYPE *Release)( 6069 IAddrTrackingControl* This); 6070 6071 /*** IAddrTrackingControl methods ***/ 6072 HRESULT (STDMETHODCALLTYPE *EnableCOMDynamicAddrTracking)( 6073 IAddrTrackingControl* This); 6074 6075 HRESULT (STDMETHODCALLTYPE *DisableCOMDynamicAddrTracking)( 6076 IAddrTrackingControl* This); 6077 6078 END_INTERFACE 6079 } IAddrTrackingControlVtbl; 6080 interface IAddrTrackingControl { 6081 CONST_VTBL IAddrTrackingControlVtbl* lpVtbl; 6082 }; 6083 6084 #ifdef COBJMACROS 6085 #ifndef WIDL_C_INLINE_WRAPPERS 6086 /*** IUnknown methods ***/ 6087 #define IAddrTrackingControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6088 #define IAddrTrackingControl_AddRef(This) (This)->lpVtbl->AddRef(This) 6089 #define IAddrTrackingControl_Release(This) (This)->lpVtbl->Release(This) 6090 /*** IAddrTrackingControl methods ***/ 6091 #define IAddrTrackingControl_EnableCOMDynamicAddrTracking(This) (This)->lpVtbl->EnableCOMDynamicAddrTracking(This) 6092 #define IAddrTrackingControl_DisableCOMDynamicAddrTracking(This) (This)->lpVtbl->DisableCOMDynamicAddrTracking(This) 6093 #else 6094 /*** IUnknown methods ***/ 6095 static FORCEINLINE HRESULT IAddrTrackingControl_QueryInterface(IAddrTrackingControl* This,REFIID riid,void **ppvObject) { 6096 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6097 } 6098 static FORCEINLINE ULONG IAddrTrackingControl_AddRef(IAddrTrackingControl* This) { 6099 return This->lpVtbl->AddRef(This); 6100 } 6101 static FORCEINLINE ULONG IAddrTrackingControl_Release(IAddrTrackingControl* This) { 6102 return This->lpVtbl->Release(This); 6103 } 6104 /*** IAddrTrackingControl methods ***/ 6105 static FORCEINLINE HRESULT IAddrTrackingControl_EnableCOMDynamicAddrTracking(IAddrTrackingControl* This) { 6106 return This->lpVtbl->EnableCOMDynamicAddrTracking(This); 6107 } 6108 static FORCEINLINE HRESULT IAddrTrackingControl_DisableCOMDynamicAddrTracking(IAddrTrackingControl* This) { 6109 return This->lpVtbl->DisableCOMDynamicAddrTracking(This); 6110 } 6111 #endif 6112 #endif 6113 6114 #endif 6115 6116 HRESULT STDMETHODCALLTYPE IAddrTrackingControl_EnableCOMDynamicAddrTracking_Proxy( 6117 IAddrTrackingControl* This); 6118 void __RPC_STUB IAddrTrackingControl_EnableCOMDynamicAddrTracking_Stub( 6119 IRpcStubBuffer* This, 6120 IRpcChannelBuffer* pRpcChannelBuffer, 6121 PRPC_MESSAGE pRpcMessage, 6122 DWORD* pdwStubPhase); 6123 HRESULT STDMETHODCALLTYPE IAddrTrackingControl_DisableCOMDynamicAddrTracking_Proxy( 6124 IAddrTrackingControl* This); 6125 void __RPC_STUB IAddrTrackingControl_DisableCOMDynamicAddrTracking_Stub( 6126 IRpcStubBuffer* This, 6127 IRpcChannelBuffer* pRpcChannelBuffer, 6128 PRPC_MESSAGE pRpcMessage, 6129 DWORD* pdwStubPhase); 6130 6131 #endif /* __IAddrTrackingControl_INTERFACE_DEFINED__ */ 6132 6133 6134 /***************************************************************************** 6135 * IAddrExclusionControl interface 6136 */ 6137 #ifndef __IAddrExclusionControl_INTERFACE_DEFINED__ 6138 #define __IAddrExclusionControl_INTERFACE_DEFINED__ 6139 6140 typedef IAddrExclusionControl *LPADDREXCLUSIONCONTROL; 6141 DEFINE_GUID(IID_IAddrExclusionControl, 0x00000148, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 6142 #if defined(__cplusplus) && !defined(CINTERFACE) 6143 MIDL_INTERFACE("00000148-0000-0000-c000-000000000046") 6144 IAddrExclusionControl : public IUnknown 6145 { 6146 virtual HRESULT STDMETHODCALLTYPE GetCurrentAddrExclusionList( 6147 REFIID riid, 6148 void **ppEnumerator) = 0; 6149 6150 virtual HRESULT STDMETHODCALLTYPE UpdateAddrExclusionList( 6151 IUnknown *pEnumerator) = 0; 6152 6153 }; 6154 #ifdef __CRT_UUID_DECL 6155 __CRT_UUID_DECL(IAddrExclusionControl, 0x00000148, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 6156 #endif 6157 #else 6158 typedef struct IAddrExclusionControlVtbl { 6159 BEGIN_INTERFACE 6160 6161 /*** IUnknown methods ***/ 6162 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6163 IAddrExclusionControl* This, 6164 REFIID riid, 6165 void **ppvObject); 6166 6167 ULONG (STDMETHODCALLTYPE *AddRef)( 6168 IAddrExclusionControl* This); 6169 6170 ULONG (STDMETHODCALLTYPE *Release)( 6171 IAddrExclusionControl* This); 6172 6173 /*** IAddrExclusionControl methods ***/ 6174 HRESULT (STDMETHODCALLTYPE *GetCurrentAddrExclusionList)( 6175 IAddrExclusionControl* This, 6176 REFIID riid, 6177 void **ppEnumerator); 6178 6179 HRESULT (STDMETHODCALLTYPE *UpdateAddrExclusionList)( 6180 IAddrExclusionControl* This, 6181 IUnknown *pEnumerator); 6182 6183 END_INTERFACE 6184 } IAddrExclusionControlVtbl; 6185 interface IAddrExclusionControl { 6186 CONST_VTBL IAddrExclusionControlVtbl* lpVtbl; 6187 }; 6188 6189 #ifdef COBJMACROS 6190 #ifndef WIDL_C_INLINE_WRAPPERS 6191 /*** IUnknown methods ***/ 6192 #define IAddrExclusionControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6193 #define IAddrExclusionControl_AddRef(This) (This)->lpVtbl->AddRef(This) 6194 #define IAddrExclusionControl_Release(This) (This)->lpVtbl->Release(This) 6195 /*** IAddrExclusionControl methods ***/ 6196 #define IAddrExclusionControl_GetCurrentAddrExclusionList(This,riid,ppEnumerator) (This)->lpVtbl->GetCurrentAddrExclusionList(This,riid,ppEnumerator) 6197 #define IAddrExclusionControl_UpdateAddrExclusionList(This,pEnumerator) (This)->lpVtbl->UpdateAddrExclusionList(This,pEnumerator) 6198 #else 6199 /*** IUnknown methods ***/ 6200 static FORCEINLINE HRESULT IAddrExclusionControl_QueryInterface(IAddrExclusionControl* This,REFIID riid,void **ppvObject) { 6201 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6202 } 6203 static FORCEINLINE ULONG IAddrExclusionControl_AddRef(IAddrExclusionControl* This) { 6204 return This->lpVtbl->AddRef(This); 6205 } 6206 static FORCEINLINE ULONG IAddrExclusionControl_Release(IAddrExclusionControl* This) { 6207 return This->lpVtbl->Release(This); 6208 } 6209 /*** IAddrExclusionControl methods ***/ 6210 static FORCEINLINE HRESULT IAddrExclusionControl_GetCurrentAddrExclusionList(IAddrExclusionControl* This,REFIID riid,void **ppEnumerator) { 6211 return This->lpVtbl->GetCurrentAddrExclusionList(This,riid,ppEnumerator); 6212 } 6213 static FORCEINLINE HRESULT IAddrExclusionControl_UpdateAddrExclusionList(IAddrExclusionControl* This,IUnknown *pEnumerator) { 6214 return This->lpVtbl->UpdateAddrExclusionList(This,pEnumerator); 6215 } 6216 #endif 6217 #endif 6218 6219 #endif 6220 6221 HRESULT STDMETHODCALLTYPE IAddrExclusionControl_GetCurrentAddrExclusionList_Proxy( 6222 IAddrExclusionControl* This, 6223 REFIID riid, 6224 void **ppEnumerator); 6225 void __RPC_STUB IAddrExclusionControl_GetCurrentAddrExclusionList_Stub( 6226 IRpcStubBuffer* This, 6227 IRpcChannelBuffer* pRpcChannelBuffer, 6228 PRPC_MESSAGE pRpcMessage, 6229 DWORD* pdwStubPhase); 6230 HRESULT STDMETHODCALLTYPE IAddrExclusionControl_UpdateAddrExclusionList_Proxy( 6231 IAddrExclusionControl* This, 6232 IUnknown *pEnumerator); 6233 void __RPC_STUB IAddrExclusionControl_UpdateAddrExclusionList_Stub( 6234 IRpcStubBuffer* This, 6235 IRpcChannelBuffer* pRpcChannelBuffer, 6236 PRPC_MESSAGE pRpcMessage, 6237 DWORD* pdwStubPhase); 6238 6239 #endif /* __IAddrExclusionControl_INTERFACE_DEFINED__ */ 6240 6241 6242 /***************************************************************************** 6243 * IPipeByte interface 6244 */ 6245 #ifndef __IPipeByte_INTERFACE_DEFINED__ 6246 #define __IPipeByte_INTERFACE_DEFINED__ 6247 6248 DEFINE_GUID(IID_IPipeByte, 0xdb2f3aca, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a); 6249 #if defined(__cplusplus) && !defined(CINTERFACE) 6250 MIDL_INTERFACE("db2f3aca-2f86-11d1-8e04-00c04fb9989a") 6251 IPipeByte : public IUnknown 6252 { 6253 virtual HRESULT STDMETHODCALLTYPE Pull( 6254 BYTE *buf, 6255 ULONG cRequest, 6256 ULONG *pcReturned) = 0; 6257 6258 virtual HRESULT STDMETHODCALLTYPE Push( 6259 BYTE *buf, 6260 ULONG cSent) = 0; 6261 6262 }; 6263 #ifdef __CRT_UUID_DECL 6264 __CRT_UUID_DECL(IPipeByte, 0xdb2f3aca, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a) 6265 #endif 6266 #else 6267 typedef struct IPipeByteVtbl { 6268 BEGIN_INTERFACE 6269 6270 /*** IUnknown methods ***/ 6271 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6272 IPipeByte* This, 6273 REFIID riid, 6274 void **ppvObject); 6275 6276 ULONG (STDMETHODCALLTYPE *AddRef)( 6277 IPipeByte* This); 6278 6279 ULONG (STDMETHODCALLTYPE *Release)( 6280 IPipeByte* This); 6281 6282 /*** IPipeByte methods ***/ 6283 HRESULT (STDMETHODCALLTYPE *Pull)( 6284 IPipeByte* This, 6285 BYTE *buf, 6286 ULONG cRequest, 6287 ULONG *pcReturned); 6288 6289 HRESULT (STDMETHODCALLTYPE *Push)( 6290 IPipeByte* This, 6291 BYTE *buf, 6292 ULONG cSent); 6293 6294 END_INTERFACE 6295 } IPipeByteVtbl; 6296 interface IPipeByte { 6297 CONST_VTBL IPipeByteVtbl* lpVtbl; 6298 }; 6299 6300 #ifdef COBJMACROS 6301 #ifndef WIDL_C_INLINE_WRAPPERS 6302 /*** IUnknown methods ***/ 6303 #define IPipeByte_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6304 #define IPipeByte_AddRef(This) (This)->lpVtbl->AddRef(This) 6305 #define IPipeByte_Release(This) (This)->lpVtbl->Release(This) 6306 /*** IPipeByte methods ***/ 6307 #define IPipeByte_Pull(This,buf,cRequest,pcReturned) (This)->lpVtbl->Pull(This,buf,cRequest,pcReturned) 6308 #define IPipeByte_Push(This,buf,cSent) (This)->lpVtbl->Push(This,buf,cSent) 6309 #else 6310 /*** IUnknown methods ***/ 6311 static FORCEINLINE HRESULT IPipeByte_QueryInterface(IPipeByte* This,REFIID riid,void **ppvObject) { 6312 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6313 } 6314 static FORCEINLINE ULONG IPipeByte_AddRef(IPipeByte* This) { 6315 return This->lpVtbl->AddRef(This); 6316 } 6317 static FORCEINLINE ULONG IPipeByte_Release(IPipeByte* This) { 6318 return This->lpVtbl->Release(This); 6319 } 6320 /*** IPipeByte methods ***/ 6321 static FORCEINLINE HRESULT IPipeByte_Pull(IPipeByte* This,BYTE *buf,ULONG cRequest,ULONG *pcReturned) { 6322 return This->lpVtbl->Pull(This,buf,cRequest,pcReturned); 6323 } 6324 static FORCEINLINE HRESULT IPipeByte_Push(IPipeByte* This,BYTE *buf,ULONG cSent) { 6325 return This->lpVtbl->Push(This,buf,cSent); 6326 } 6327 #endif 6328 #endif 6329 6330 #endif 6331 6332 HRESULT STDMETHODCALLTYPE IPipeByte_Pull_Proxy( 6333 IPipeByte* This, 6334 BYTE *buf, 6335 ULONG cRequest, 6336 ULONG *pcReturned); 6337 void __RPC_STUB IPipeByte_Pull_Stub( 6338 IRpcStubBuffer* This, 6339 IRpcChannelBuffer* pRpcChannelBuffer, 6340 PRPC_MESSAGE pRpcMessage, 6341 DWORD* pdwStubPhase); 6342 HRESULT STDMETHODCALLTYPE IPipeByte_Push_Proxy( 6343 IPipeByte* This, 6344 BYTE *buf, 6345 ULONG cSent); 6346 void __RPC_STUB IPipeByte_Push_Stub( 6347 IRpcStubBuffer* This, 6348 IRpcChannelBuffer* pRpcChannelBuffer, 6349 PRPC_MESSAGE pRpcMessage, 6350 DWORD* pdwStubPhase); 6351 6352 #endif /* __IPipeByte_INTERFACE_DEFINED__ */ 6353 6354 6355 /***************************************************************************** 6356 * IPipeLong interface 6357 */ 6358 #ifndef __IPipeLong_INTERFACE_DEFINED__ 6359 #define __IPipeLong_INTERFACE_DEFINED__ 6360 6361 DEFINE_GUID(IID_IPipeLong, 0xdb2f3acc, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a); 6362 #if defined(__cplusplus) && !defined(CINTERFACE) 6363 MIDL_INTERFACE("db2f3acc-2f86-11d1-8e04-00c04fb9989a") 6364 IPipeLong : public IUnknown 6365 { 6366 virtual HRESULT STDMETHODCALLTYPE Pull( 6367 LONG *buf, 6368 ULONG cRequest, 6369 ULONG *pcReturned) = 0; 6370 6371 virtual HRESULT STDMETHODCALLTYPE Push( 6372 LONG *buf, 6373 ULONG cSent) = 0; 6374 6375 }; 6376 #ifdef __CRT_UUID_DECL 6377 __CRT_UUID_DECL(IPipeLong, 0xdb2f3acc, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a) 6378 #endif 6379 #else 6380 typedef struct IPipeLongVtbl { 6381 BEGIN_INTERFACE 6382 6383 /*** IUnknown methods ***/ 6384 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6385 IPipeLong* This, 6386 REFIID riid, 6387 void **ppvObject); 6388 6389 ULONG (STDMETHODCALLTYPE *AddRef)( 6390 IPipeLong* This); 6391 6392 ULONG (STDMETHODCALLTYPE *Release)( 6393 IPipeLong* This); 6394 6395 /*** IPipeLong methods ***/ 6396 HRESULT (STDMETHODCALLTYPE *Pull)( 6397 IPipeLong* This, 6398 LONG *buf, 6399 ULONG cRequest, 6400 ULONG *pcReturned); 6401 6402 HRESULT (STDMETHODCALLTYPE *Push)( 6403 IPipeLong* This, 6404 LONG *buf, 6405 ULONG cSent); 6406 6407 END_INTERFACE 6408 } IPipeLongVtbl; 6409 interface IPipeLong { 6410 CONST_VTBL IPipeLongVtbl* lpVtbl; 6411 }; 6412 6413 #ifdef COBJMACROS 6414 #ifndef WIDL_C_INLINE_WRAPPERS 6415 /*** IUnknown methods ***/ 6416 #define IPipeLong_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6417 #define IPipeLong_AddRef(This) (This)->lpVtbl->AddRef(This) 6418 #define IPipeLong_Release(This) (This)->lpVtbl->Release(This) 6419 /*** IPipeLong methods ***/ 6420 #define IPipeLong_Pull(This,buf,cRequest,pcReturned) (This)->lpVtbl->Pull(This,buf,cRequest,pcReturned) 6421 #define IPipeLong_Push(This,buf,cSent) (This)->lpVtbl->Push(This,buf,cSent) 6422 #else 6423 /*** IUnknown methods ***/ 6424 static FORCEINLINE HRESULT IPipeLong_QueryInterface(IPipeLong* This,REFIID riid,void **ppvObject) { 6425 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6426 } 6427 static FORCEINLINE ULONG IPipeLong_AddRef(IPipeLong* This) { 6428 return This->lpVtbl->AddRef(This); 6429 } 6430 static FORCEINLINE ULONG IPipeLong_Release(IPipeLong* This) { 6431 return This->lpVtbl->Release(This); 6432 } 6433 /*** IPipeLong methods ***/ 6434 static FORCEINLINE HRESULT IPipeLong_Pull(IPipeLong* This,LONG *buf,ULONG cRequest,ULONG *pcReturned) { 6435 return This->lpVtbl->Pull(This,buf,cRequest,pcReturned); 6436 } 6437 static FORCEINLINE HRESULT IPipeLong_Push(IPipeLong* This,LONG *buf,ULONG cSent) { 6438 return This->lpVtbl->Push(This,buf,cSent); 6439 } 6440 #endif 6441 #endif 6442 6443 #endif 6444 6445 HRESULT STDMETHODCALLTYPE IPipeLong_Pull_Proxy( 6446 IPipeLong* This, 6447 LONG *buf, 6448 ULONG cRequest, 6449 ULONG *pcReturned); 6450 void __RPC_STUB IPipeLong_Pull_Stub( 6451 IRpcStubBuffer* This, 6452 IRpcChannelBuffer* pRpcChannelBuffer, 6453 PRPC_MESSAGE pRpcMessage, 6454 DWORD* pdwStubPhase); 6455 HRESULT STDMETHODCALLTYPE IPipeLong_Push_Proxy( 6456 IPipeLong* This, 6457 LONG *buf, 6458 ULONG cSent); 6459 void __RPC_STUB IPipeLong_Push_Stub( 6460 IRpcStubBuffer* This, 6461 IRpcChannelBuffer* pRpcChannelBuffer, 6462 PRPC_MESSAGE pRpcMessage, 6463 DWORD* pdwStubPhase); 6464 6465 #endif /* __IPipeLong_INTERFACE_DEFINED__ */ 6466 6467 6468 /***************************************************************************** 6469 * IPipeDouble interface 6470 */ 6471 #ifndef __IPipeDouble_INTERFACE_DEFINED__ 6472 #define __IPipeDouble_INTERFACE_DEFINED__ 6473 6474 DEFINE_GUID(IID_IPipeDouble, 0xdb2f3ace, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a); 6475 #if defined(__cplusplus) && !defined(CINTERFACE) 6476 MIDL_INTERFACE("db2f3ace-2f86-11d1-8e04-00c04fb9989a") 6477 IPipeDouble : public IUnknown 6478 { 6479 virtual HRESULT STDMETHODCALLTYPE Pull( 6480 DOUBLE *buf, 6481 ULONG cRequest, 6482 ULONG *pcReturned) = 0; 6483 6484 virtual HRESULT STDMETHODCALLTYPE Push( 6485 DOUBLE *buf, 6486 ULONG cSent) = 0; 6487 6488 }; 6489 #ifdef __CRT_UUID_DECL 6490 __CRT_UUID_DECL(IPipeDouble, 0xdb2f3ace, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a) 6491 #endif 6492 #else 6493 typedef struct IPipeDoubleVtbl { 6494 BEGIN_INTERFACE 6495 6496 /*** IUnknown methods ***/ 6497 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6498 IPipeDouble* This, 6499 REFIID riid, 6500 void **ppvObject); 6501 6502 ULONG (STDMETHODCALLTYPE *AddRef)( 6503 IPipeDouble* This); 6504 6505 ULONG (STDMETHODCALLTYPE *Release)( 6506 IPipeDouble* This); 6507 6508 /*** IPipeDouble methods ***/ 6509 HRESULT (STDMETHODCALLTYPE *Pull)( 6510 IPipeDouble* This, 6511 DOUBLE *buf, 6512 ULONG cRequest, 6513 ULONG *pcReturned); 6514 6515 HRESULT (STDMETHODCALLTYPE *Push)( 6516 IPipeDouble* This, 6517 DOUBLE *buf, 6518 ULONG cSent); 6519 6520 END_INTERFACE 6521 } IPipeDoubleVtbl; 6522 interface IPipeDouble { 6523 CONST_VTBL IPipeDoubleVtbl* lpVtbl; 6524 }; 6525 6526 #ifdef COBJMACROS 6527 #ifndef WIDL_C_INLINE_WRAPPERS 6528 /*** IUnknown methods ***/ 6529 #define IPipeDouble_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6530 #define IPipeDouble_AddRef(This) (This)->lpVtbl->AddRef(This) 6531 #define IPipeDouble_Release(This) (This)->lpVtbl->Release(This) 6532 /*** IPipeDouble methods ***/ 6533 #define IPipeDouble_Pull(This,buf,cRequest,pcReturned) (This)->lpVtbl->Pull(This,buf,cRequest,pcReturned) 6534 #define IPipeDouble_Push(This,buf,cSent) (This)->lpVtbl->Push(This,buf,cSent) 6535 #else 6536 /*** IUnknown methods ***/ 6537 static FORCEINLINE HRESULT IPipeDouble_QueryInterface(IPipeDouble* This,REFIID riid,void **ppvObject) { 6538 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6539 } 6540 static FORCEINLINE ULONG IPipeDouble_AddRef(IPipeDouble* This) { 6541 return This->lpVtbl->AddRef(This); 6542 } 6543 static FORCEINLINE ULONG IPipeDouble_Release(IPipeDouble* This) { 6544 return This->lpVtbl->Release(This); 6545 } 6546 /*** IPipeDouble methods ***/ 6547 static FORCEINLINE HRESULT IPipeDouble_Pull(IPipeDouble* This,DOUBLE *buf,ULONG cRequest,ULONG *pcReturned) { 6548 return This->lpVtbl->Pull(This,buf,cRequest,pcReturned); 6549 } 6550 static FORCEINLINE HRESULT IPipeDouble_Push(IPipeDouble* This,DOUBLE *buf,ULONG cSent) { 6551 return This->lpVtbl->Push(This,buf,cSent); 6552 } 6553 #endif 6554 #endif 6555 6556 #endif 6557 6558 HRESULT STDMETHODCALLTYPE IPipeDouble_Pull_Proxy( 6559 IPipeDouble* This, 6560 DOUBLE *buf, 6561 ULONG cRequest, 6562 ULONG *pcReturned); 6563 void __RPC_STUB IPipeDouble_Pull_Stub( 6564 IRpcStubBuffer* This, 6565 IRpcChannelBuffer* pRpcChannelBuffer, 6566 PRPC_MESSAGE pRpcMessage, 6567 DWORD* pdwStubPhase); 6568 HRESULT STDMETHODCALLTYPE IPipeDouble_Push_Proxy( 6569 IPipeDouble* This, 6570 DOUBLE *buf, 6571 ULONG cSent); 6572 void __RPC_STUB IPipeDouble_Push_Stub( 6573 IRpcStubBuffer* This, 6574 IRpcChannelBuffer* pRpcChannelBuffer, 6575 PRPC_MESSAGE pRpcMessage, 6576 DWORD* pdwStubPhase); 6577 6578 #endif /* __IPipeDouble_INTERFACE_DEFINED__ */ 6579 6580 6581 #if defined USE_COM_CONTEXT_DEF || defined BUILDTYPE_COMSVCS || defined _COMBASEAPI_ || defined _OLE32_ 6582 6583 typedef DWORD CPFLAGS; 6584 6585 typedef struct tagContextProperty { 6586 GUID policyId; 6587 CPFLAGS flags; 6588 IUnknown *pUnk; 6589 } ContextProperty; 6590 6591 /***************************************************************************** 6592 * IEnumContextProps interface 6593 */ 6594 #ifndef __IEnumContextProps_INTERFACE_DEFINED__ 6595 #define __IEnumContextProps_INTERFACE_DEFINED__ 6596 6597 typedef IEnumContextProps *LPENUMCONTEXTPROPS; 6598 6599 DEFINE_GUID(IID_IEnumContextProps, 0x000001c1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 6600 #if defined(__cplusplus) && !defined(CINTERFACE) 6601 MIDL_INTERFACE("000001c1-0000-0000-c000-000000000046") 6602 IEnumContextProps : public IUnknown 6603 { 6604 virtual HRESULT STDMETHODCALLTYPE Next( 6605 ULONG celt, 6606 ContextProperty *pContextProperties, 6607 ULONG *pceltFetched) = 0; 6608 6609 virtual HRESULT STDMETHODCALLTYPE Skip( 6610 ULONG celt) = 0; 6611 6612 virtual HRESULT STDMETHODCALLTYPE Reset( 6613 ) = 0; 6614 6615 virtual HRESULT STDMETHODCALLTYPE Clone( 6616 IEnumContextProps **ppEnumContextProps) = 0; 6617 6618 virtual HRESULT STDMETHODCALLTYPE Count( 6619 ULONG *pcelt) = 0; 6620 6621 }; 6622 #ifdef __CRT_UUID_DECL 6623 __CRT_UUID_DECL(IEnumContextProps, 0x000001c1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 6624 #endif 6625 #else 6626 typedef struct IEnumContextPropsVtbl { 6627 BEGIN_INTERFACE 6628 6629 /*** IUnknown methods ***/ 6630 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6631 IEnumContextProps* This, 6632 REFIID riid, 6633 void **ppvObject); 6634 6635 ULONG (STDMETHODCALLTYPE *AddRef)( 6636 IEnumContextProps* This); 6637 6638 ULONG (STDMETHODCALLTYPE *Release)( 6639 IEnumContextProps* This); 6640 6641 /*** IEnumContextProps methods ***/ 6642 HRESULT (STDMETHODCALLTYPE *Next)( 6643 IEnumContextProps* This, 6644 ULONG celt, 6645 ContextProperty *pContextProperties, 6646 ULONG *pceltFetched); 6647 6648 HRESULT (STDMETHODCALLTYPE *Skip)( 6649 IEnumContextProps* This, 6650 ULONG celt); 6651 6652 HRESULT (STDMETHODCALLTYPE *Reset)( 6653 IEnumContextProps* This); 6654 6655 HRESULT (STDMETHODCALLTYPE *Clone)( 6656 IEnumContextProps* This, 6657 IEnumContextProps **ppEnumContextProps); 6658 6659 HRESULT (STDMETHODCALLTYPE *Count)( 6660 IEnumContextProps* This, 6661 ULONG *pcelt); 6662 6663 END_INTERFACE 6664 } IEnumContextPropsVtbl; 6665 interface IEnumContextProps { 6666 CONST_VTBL IEnumContextPropsVtbl* lpVtbl; 6667 }; 6668 6669 #ifdef COBJMACROS 6670 #ifndef WIDL_C_INLINE_WRAPPERS 6671 /*** IUnknown methods ***/ 6672 #define IEnumContextProps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6673 #define IEnumContextProps_AddRef(This) (This)->lpVtbl->AddRef(This) 6674 #define IEnumContextProps_Release(This) (This)->lpVtbl->Release(This) 6675 /*** IEnumContextProps methods ***/ 6676 #define IEnumContextProps_Next(This,celt,pContextProperties,pceltFetched) (This)->lpVtbl->Next(This,celt,pContextProperties,pceltFetched) 6677 #define IEnumContextProps_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 6678 #define IEnumContextProps_Reset(This) (This)->lpVtbl->Reset(This) 6679 #define IEnumContextProps_Clone(This,ppEnumContextProps) (This)->lpVtbl->Clone(This,ppEnumContextProps) 6680 #define IEnumContextProps_Count(This,pcelt) (This)->lpVtbl->Count(This,pcelt) 6681 #else 6682 /*** IUnknown methods ***/ 6683 static FORCEINLINE HRESULT IEnumContextProps_QueryInterface(IEnumContextProps* This,REFIID riid,void **ppvObject) { 6684 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6685 } 6686 static FORCEINLINE ULONG IEnumContextProps_AddRef(IEnumContextProps* This) { 6687 return This->lpVtbl->AddRef(This); 6688 } 6689 static FORCEINLINE ULONG IEnumContextProps_Release(IEnumContextProps* This) { 6690 return This->lpVtbl->Release(This); 6691 } 6692 /*** IEnumContextProps methods ***/ 6693 static FORCEINLINE HRESULT IEnumContextProps_Next(IEnumContextProps* This,ULONG celt,ContextProperty *pContextProperties,ULONG *pceltFetched) { 6694 return This->lpVtbl->Next(This,celt,pContextProperties,pceltFetched); 6695 } 6696 static FORCEINLINE HRESULT IEnumContextProps_Skip(IEnumContextProps* This,ULONG celt) { 6697 return This->lpVtbl->Skip(This,celt); 6698 } 6699 static FORCEINLINE HRESULT IEnumContextProps_Reset(IEnumContextProps* This) { 6700 return This->lpVtbl->Reset(This); 6701 } 6702 static FORCEINLINE HRESULT IEnumContextProps_Clone(IEnumContextProps* This,IEnumContextProps **ppEnumContextProps) { 6703 return This->lpVtbl->Clone(This,ppEnumContextProps); 6704 } 6705 static FORCEINLINE HRESULT IEnumContextProps_Count(IEnumContextProps* This,ULONG *pcelt) { 6706 return This->lpVtbl->Count(This,pcelt); 6707 } 6708 #endif 6709 #endif 6710 6711 #endif 6712 6713 HRESULT STDMETHODCALLTYPE IEnumContextProps_Next_Proxy( 6714 IEnumContextProps* This, 6715 ULONG celt, 6716 ContextProperty *pContextProperties, 6717 ULONG *pceltFetched); 6718 void __RPC_STUB IEnumContextProps_Next_Stub( 6719 IRpcStubBuffer* This, 6720 IRpcChannelBuffer* pRpcChannelBuffer, 6721 PRPC_MESSAGE pRpcMessage, 6722 DWORD* pdwStubPhase); 6723 HRESULT STDMETHODCALLTYPE IEnumContextProps_Skip_Proxy( 6724 IEnumContextProps* This, 6725 ULONG celt); 6726 void __RPC_STUB IEnumContextProps_Skip_Stub( 6727 IRpcStubBuffer* This, 6728 IRpcChannelBuffer* pRpcChannelBuffer, 6729 PRPC_MESSAGE pRpcMessage, 6730 DWORD* pdwStubPhase); 6731 HRESULT STDMETHODCALLTYPE IEnumContextProps_Reset_Proxy( 6732 IEnumContextProps* This); 6733 void __RPC_STUB IEnumContextProps_Reset_Stub( 6734 IRpcStubBuffer* This, 6735 IRpcChannelBuffer* pRpcChannelBuffer, 6736 PRPC_MESSAGE pRpcMessage, 6737 DWORD* pdwStubPhase); 6738 HRESULT STDMETHODCALLTYPE IEnumContextProps_Clone_Proxy( 6739 IEnumContextProps* This, 6740 IEnumContextProps **ppEnumContextProps); 6741 void __RPC_STUB IEnumContextProps_Clone_Stub( 6742 IRpcStubBuffer* This, 6743 IRpcChannelBuffer* pRpcChannelBuffer, 6744 PRPC_MESSAGE pRpcMessage, 6745 DWORD* pdwStubPhase); 6746 HRESULT STDMETHODCALLTYPE IEnumContextProps_Count_Proxy( 6747 IEnumContextProps* This, 6748 ULONG *pcelt); 6749 void __RPC_STUB IEnumContextProps_Count_Stub( 6750 IRpcStubBuffer* This, 6751 IRpcChannelBuffer* pRpcChannelBuffer, 6752 PRPC_MESSAGE pRpcMessage, 6753 DWORD* pdwStubPhase); 6754 6755 #endif /* __IEnumContextProps_INTERFACE_DEFINED__ */ 6756 6757 6758 /***************************************************************************** 6759 * IContext interface 6760 */ 6761 #ifndef __IContext_INTERFACE_DEFINED__ 6762 #define __IContext_INTERFACE_DEFINED__ 6763 6764 DEFINE_GUID(IID_IContext, 0x000001c0, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 6765 #if defined(__cplusplus) && !defined(CINTERFACE) 6766 MIDL_INTERFACE("000001c0-0000-0000-c000-000000000046") 6767 IContext : public IUnknown 6768 { 6769 virtual HRESULT STDMETHODCALLTYPE SetProperty( 6770 REFGUID rpolicyId, 6771 CPFLAGS flags, 6772 IUnknown *pUnk) = 0; 6773 6774 virtual HRESULT STDMETHODCALLTYPE RemoveProperty( 6775 REFGUID rPolicyId) = 0; 6776 6777 virtual HRESULT STDMETHODCALLTYPE GetProperty( 6778 REFGUID rGuid, 6779 CPFLAGS *pFlags, 6780 IUnknown **ppUnk) = 0; 6781 6782 virtual HRESULT STDMETHODCALLTYPE EnumContextProps( 6783 IEnumContextProps **ppEnumContextProps) = 0; 6784 6785 }; 6786 #ifdef __CRT_UUID_DECL 6787 __CRT_UUID_DECL(IContext, 0x000001c0, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 6788 #endif 6789 #else 6790 typedef struct IContextVtbl { 6791 BEGIN_INTERFACE 6792 6793 /*** IUnknown methods ***/ 6794 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6795 IContext* This, 6796 REFIID riid, 6797 void **ppvObject); 6798 6799 ULONG (STDMETHODCALLTYPE *AddRef)( 6800 IContext* This); 6801 6802 ULONG (STDMETHODCALLTYPE *Release)( 6803 IContext* This); 6804 6805 /*** IContext methods ***/ 6806 HRESULT (STDMETHODCALLTYPE *SetProperty)( 6807 IContext* This, 6808 REFGUID rpolicyId, 6809 CPFLAGS flags, 6810 IUnknown *pUnk); 6811 6812 HRESULT (STDMETHODCALLTYPE *RemoveProperty)( 6813 IContext* This, 6814 REFGUID rPolicyId); 6815 6816 HRESULT (STDMETHODCALLTYPE *GetProperty)( 6817 IContext* This, 6818 REFGUID rGuid, 6819 CPFLAGS *pFlags, 6820 IUnknown **ppUnk); 6821 6822 HRESULT (STDMETHODCALLTYPE *EnumContextProps)( 6823 IContext* This, 6824 IEnumContextProps **ppEnumContextProps); 6825 6826 END_INTERFACE 6827 } IContextVtbl; 6828 interface IContext { 6829 CONST_VTBL IContextVtbl* lpVtbl; 6830 }; 6831 6832 #ifdef COBJMACROS 6833 #ifndef WIDL_C_INLINE_WRAPPERS 6834 /*** IUnknown methods ***/ 6835 #define IContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6836 #define IContext_AddRef(This) (This)->lpVtbl->AddRef(This) 6837 #define IContext_Release(This) (This)->lpVtbl->Release(This) 6838 /*** IContext methods ***/ 6839 #define IContext_SetProperty(This,rpolicyId,flags,pUnk) (This)->lpVtbl->SetProperty(This,rpolicyId,flags,pUnk) 6840 #define IContext_RemoveProperty(This,rPolicyId) (This)->lpVtbl->RemoveProperty(This,rPolicyId) 6841 #define IContext_GetProperty(This,rGuid,pFlags,ppUnk) (This)->lpVtbl->GetProperty(This,rGuid,pFlags,ppUnk) 6842 #define IContext_EnumContextProps(This,ppEnumContextProps) (This)->lpVtbl->EnumContextProps(This,ppEnumContextProps) 6843 #else 6844 /*** IUnknown methods ***/ 6845 static FORCEINLINE HRESULT IContext_QueryInterface(IContext* This,REFIID riid,void **ppvObject) { 6846 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6847 } 6848 static FORCEINLINE ULONG IContext_AddRef(IContext* This) { 6849 return This->lpVtbl->AddRef(This); 6850 } 6851 static FORCEINLINE ULONG IContext_Release(IContext* This) { 6852 return This->lpVtbl->Release(This); 6853 } 6854 /*** IContext methods ***/ 6855 static FORCEINLINE HRESULT IContext_SetProperty(IContext* This,REFGUID rpolicyId,CPFLAGS flags,IUnknown *pUnk) { 6856 return This->lpVtbl->SetProperty(This,rpolicyId,flags,pUnk); 6857 } 6858 static FORCEINLINE HRESULT IContext_RemoveProperty(IContext* This,REFGUID rPolicyId) { 6859 return This->lpVtbl->RemoveProperty(This,rPolicyId); 6860 } 6861 static FORCEINLINE HRESULT IContext_GetProperty(IContext* This,REFGUID rGuid,CPFLAGS *pFlags,IUnknown **ppUnk) { 6862 return This->lpVtbl->GetProperty(This,rGuid,pFlags,ppUnk); 6863 } 6864 static FORCEINLINE HRESULT IContext_EnumContextProps(IContext* This,IEnumContextProps **ppEnumContextProps) { 6865 return This->lpVtbl->EnumContextProps(This,ppEnumContextProps); 6866 } 6867 #endif 6868 #endif 6869 6870 #endif 6871 6872 HRESULT STDMETHODCALLTYPE IContext_SetProperty_Proxy( 6873 IContext* This, 6874 REFGUID rpolicyId, 6875 CPFLAGS flags, 6876 IUnknown *pUnk); 6877 void __RPC_STUB IContext_SetProperty_Stub( 6878 IRpcStubBuffer* This, 6879 IRpcChannelBuffer* pRpcChannelBuffer, 6880 PRPC_MESSAGE pRpcMessage, 6881 DWORD* pdwStubPhase); 6882 HRESULT STDMETHODCALLTYPE IContext_RemoveProperty_Proxy( 6883 IContext* This, 6884 REFGUID rPolicyId); 6885 void __RPC_STUB IContext_RemoveProperty_Stub( 6886 IRpcStubBuffer* This, 6887 IRpcChannelBuffer* pRpcChannelBuffer, 6888 PRPC_MESSAGE pRpcMessage, 6889 DWORD* pdwStubPhase); 6890 HRESULT STDMETHODCALLTYPE IContext_GetProperty_Proxy( 6891 IContext* This, 6892 REFGUID rGuid, 6893 CPFLAGS *pFlags, 6894 IUnknown **ppUnk); 6895 void __RPC_STUB IContext_GetProperty_Stub( 6896 IRpcStubBuffer* This, 6897 IRpcChannelBuffer* pRpcChannelBuffer, 6898 PRPC_MESSAGE pRpcMessage, 6899 DWORD* pdwStubPhase); 6900 HRESULT STDMETHODCALLTYPE IContext_EnumContextProps_Proxy( 6901 IContext* This, 6902 IEnumContextProps **ppEnumContextProps); 6903 void __RPC_STUB IContext_EnumContextProps_Stub( 6904 IRpcStubBuffer* This, 6905 IRpcChannelBuffer* pRpcChannelBuffer, 6906 PRPC_MESSAGE pRpcMessage, 6907 DWORD* pdwStubPhase); 6908 6909 #endif /* __IContext_INTERFACE_DEFINED__ */ 6910 6911 #endif 6912 #endif 6913 6914 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 6915 typedef enum _APTTYPEQUALIFIER { 6916 APTTYPEQUALIFIER_NONE = 0, 6917 APTTYPEQUALIFIER_IMPLICIT_MTA = 1, 6918 APTTYPEQUALIFIER_NA_ON_MTA = 2, 6919 APTTYPEQUALIFIER_NA_ON_STA = 3, 6920 APTTYPEQUALIFIER_NA_ON_IMPLICIT_MTA = 4, 6921 APTTYPEQUALIFIER_NA_ON_MAINSTA = 5, 6922 APTTYPEQUALIFIER_APPLICATION_STA = 6 6923 } APTTYPEQUALIFIER; 6924 6925 typedef enum _APTTYPE { 6926 APTTYPE_CURRENT = -1, 6927 APTTYPE_STA = 0, 6928 APTTYPE_MTA = 1, 6929 APTTYPE_NA = 2, 6930 APTTYPE_MAINSTA = 3 6931 } APTTYPE; 6932 #endif 6933 6934 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 6935 typedef enum _THDTYPE { 6936 THDTYPE_BLOCKMESSAGES = 0, 6937 THDTYPE_PROCESSMESSAGES = 1 6938 } THDTYPE; 6939 6940 typedef DWORD APARTMENTID; 6941 6942 /***************************************************************************** 6943 * IComThreadingInfo interface 6944 */ 6945 #ifndef __IComThreadingInfo_INTERFACE_DEFINED__ 6946 #define __IComThreadingInfo_INTERFACE_DEFINED__ 6947 6948 DEFINE_GUID(IID_IComThreadingInfo, 0x000001ce, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 6949 #if defined(__cplusplus) && !defined(CINTERFACE) 6950 MIDL_INTERFACE("000001ce-0000-0000-c000-000000000046") 6951 IComThreadingInfo : public IUnknown 6952 { 6953 virtual HRESULT STDMETHODCALLTYPE GetCurrentApartmentType( 6954 APTTYPE *pAptType) = 0; 6955 6956 virtual HRESULT STDMETHODCALLTYPE GetCurrentThreadType( 6957 THDTYPE *pThreadType) = 0; 6958 6959 virtual HRESULT STDMETHODCALLTYPE GetCurrentLogicalThreadId( 6960 GUID *pguidLogicalThreadId) = 0; 6961 6962 virtual HRESULT STDMETHODCALLTYPE SetCurrentLogicalThreadId( 6963 REFGUID rguid) = 0; 6964 6965 }; 6966 #ifdef __CRT_UUID_DECL 6967 __CRT_UUID_DECL(IComThreadingInfo, 0x000001ce, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 6968 #endif 6969 #else 6970 typedef struct IComThreadingInfoVtbl { 6971 BEGIN_INTERFACE 6972 6973 /*** IUnknown methods ***/ 6974 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6975 IComThreadingInfo* This, 6976 REFIID riid, 6977 void **ppvObject); 6978 6979 ULONG (STDMETHODCALLTYPE *AddRef)( 6980 IComThreadingInfo* This); 6981 6982 ULONG (STDMETHODCALLTYPE *Release)( 6983 IComThreadingInfo* This); 6984 6985 /*** IComThreadingInfo methods ***/ 6986 HRESULT (STDMETHODCALLTYPE *GetCurrentApartmentType)( 6987 IComThreadingInfo* This, 6988 APTTYPE *pAptType); 6989 6990 HRESULT (STDMETHODCALLTYPE *GetCurrentThreadType)( 6991 IComThreadingInfo* This, 6992 THDTYPE *pThreadType); 6993 6994 HRESULT (STDMETHODCALLTYPE *GetCurrentLogicalThreadId)( 6995 IComThreadingInfo* This, 6996 GUID *pguidLogicalThreadId); 6997 6998 HRESULT (STDMETHODCALLTYPE *SetCurrentLogicalThreadId)( 6999 IComThreadingInfo* This, 7000 REFGUID rguid); 7001 7002 END_INTERFACE 7003 } IComThreadingInfoVtbl; 7004 interface IComThreadingInfo { 7005 CONST_VTBL IComThreadingInfoVtbl* lpVtbl; 7006 }; 7007 7008 #ifdef COBJMACROS 7009 #ifndef WIDL_C_INLINE_WRAPPERS 7010 /*** IUnknown methods ***/ 7011 #define IComThreadingInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7012 #define IComThreadingInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 7013 #define IComThreadingInfo_Release(This) (This)->lpVtbl->Release(This) 7014 /*** IComThreadingInfo methods ***/ 7015 #define IComThreadingInfo_GetCurrentApartmentType(This,pAptType) (This)->lpVtbl->GetCurrentApartmentType(This,pAptType) 7016 #define IComThreadingInfo_GetCurrentThreadType(This,pThreadType) (This)->lpVtbl->GetCurrentThreadType(This,pThreadType) 7017 #define IComThreadingInfo_GetCurrentLogicalThreadId(This,pguidLogicalThreadId) (This)->lpVtbl->GetCurrentLogicalThreadId(This,pguidLogicalThreadId) 7018 #define IComThreadingInfo_SetCurrentLogicalThreadId(This,rguid) (This)->lpVtbl->SetCurrentLogicalThreadId(This,rguid) 7019 #else 7020 /*** IUnknown methods ***/ 7021 static FORCEINLINE HRESULT IComThreadingInfo_QueryInterface(IComThreadingInfo* This,REFIID riid,void **ppvObject) { 7022 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7023 } 7024 static FORCEINLINE ULONG IComThreadingInfo_AddRef(IComThreadingInfo* This) { 7025 return This->lpVtbl->AddRef(This); 7026 } 7027 static FORCEINLINE ULONG IComThreadingInfo_Release(IComThreadingInfo* This) { 7028 return This->lpVtbl->Release(This); 7029 } 7030 /*** IComThreadingInfo methods ***/ 7031 static FORCEINLINE HRESULT IComThreadingInfo_GetCurrentApartmentType(IComThreadingInfo* This,APTTYPE *pAptType) { 7032 return This->lpVtbl->GetCurrentApartmentType(This,pAptType); 7033 } 7034 static FORCEINLINE HRESULT IComThreadingInfo_GetCurrentThreadType(IComThreadingInfo* This,THDTYPE *pThreadType) { 7035 return This->lpVtbl->GetCurrentThreadType(This,pThreadType); 7036 } 7037 static FORCEINLINE HRESULT IComThreadingInfo_GetCurrentLogicalThreadId(IComThreadingInfo* This,GUID *pguidLogicalThreadId) { 7038 return This->lpVtbl->GetCurrentLogicalThreadId(This,pguidLogicalThreadId); 7039 } 7040 static FORCEINLINE HRESULT IComThreadingInfo_SetCurrentLogicalThreadId(IComThreadingInfo* This,REFGUID rguid) { 7041 return This->lpVtbl->SetCurrentLogicalThreadId(This,rguid); 7042 } 7043 #endif 7044 #endif 7045 7046 #endif 7047 7048 HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentApartmentType_Proxy( 7049 IComThreadingInfo* This, 7050 APTTYPE *pAptType); 7051 void __RPC_STUB IComThreadingInfo_GetCurrentApartmentType_Stub( 7052 IRpcStubBuffer* This, 7053 IRpcChannelBuffer* pRpcChannelBuffer, 7054 PRPC_MESSAGE pRpcMessage, 7055 DWORD* pdwStubPhase); 7056 HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentThreadType_Proxy( 7057 IComThreadingInfo* This, 7058 THDTYPE *pThreadType); 7059 void __RPC_STUB IComThreadingInfo_GetCurrentThreadType_Stub( 7060 IRpcStubBuffer* This, 7061 IRpcChannelBuffer* pRpcChannelBuffer, 7062 PRPC_MESSAGE pRpcMessage, 7063 DWORD* pdwStubPhase); 7064 HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentLogicalThreadId_Proxy( 7065 IComThreadingInfo* This, 7066 GUID *pguidLogicalThreadId); 7067 void __RPC_STUB IComThreadingInfo_GetCurrentLogicalThreadId_Stub( 7068 IRpcStubBuffer* This, 7069 IRpcChannelBuffer* pRpcChannelBuffer, 7070 PRPC_MESSAGE pRpcMessage, 7071 DWORD* pdwStubPhase); 7072 HRESULT STDMETHODCALLTYPE IComThreadingInfo_SetCurrentLogicalThreadId_Proxy( 7073 IComThreadingInfo* This, 7074 REFGUID rguid); 7075 void __RPC_STUB IComThreadingInfo_SetCurrentLogicalThreadId_Stub( 7076 IRpcStubBuffer* This, 7077 IRpcChannelBuffer* pRpcChannelBuffer, 7078 PRPC_MESSAGE pRpcMessage, 7079 DWORD* pdwStubPhase); 7080 7081 #endif /* __IComThreadingInfo_INTERFACE_DEFINED__ */ 7082 7083 7084 /***************************************************************************** 7085 * IProcessInitControl interface 7086 */ 7087 #ifndef __IProcessInitControl_INTERFACE_DEFINED__ 7088 #define __IProcessInitControl_INTERFACE_DEFINED__ 7089 7090 DEFINE_GUID(IID_IProcessInitControl, 0x72380d55, 0x8d2b, 0x43a3, 0x85,0x13, 0x2b,0x6e,0xf3,0x14,0x34,0xe9); 7091 #if defined(__cplusplus) && !defined(CINTERFACE) 7092 MIDL_INTERFACE("72380d55-8d2b-43a3-8513-2b6ef31434e9") 7093 IProcessInitControl : public IUnknown 7094 { 7095 virtual HRESULT STDMETHODCALLTYPE ResetInitializerTimeout( 7096 DWORD dwSecondsRemaining) = 0; 7097 7098 }; 7099 #ifdef __CRT_UUID_DECL 7100 __CRT_UUID_DECL(IProcessInitControl, 0x72380d55, 0x8d2b, 0x43a3, 0x85,0x13, 0x2b,0x6e,0xf3,0x14,0x34,0xe9) 7101 #endif 7102 #else 7103 typedef struct IProcessInitControlVtbl { 7104 BEGIN_INTERFACE 7105 7106 /*** IUnknown methods ***/ 7107 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7108 IProcessInitControl* This, 7109 REFIID riid, 7110 void **ppvObject); 7111 7112 ULONG (STDMETHODCALLTYPE *AddRef)( 7113 IProcessInitControl* This); 7114 7115 ULONG (STDMETHODCALLTYPE *Release)( 7116 IProcessInitControl* This); 7117 7118 /*** IProcessInitControl methods ***/ 7119 HRESULT (STDMETHODCALLTYPE *ResetInitializerTimeout)( 7120 IProcessInitControl* This, 7121 DWORD dwSecondsRemaining); 7122 7123 END_INTERFACE 7124 } IProcessInitControlVtbl; 7125 interface IProcessInitControl { 7126 CONST_VTBL IProcessInitControlVtbl* lpVtbl; 7127 }; 7128 7129 #ifdef COBJMACROS 7130 #ifndef WIDL_C_INLINE_WRAPPERS 7131 /*** IUnknown methods ***/ 7132 #define IProcessInitControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7133 #define IProcessInitControl_AddRef(This) (This)->lpVtbl->AddRef(This) 7134 #define IProcessInitControl_Release(This) (This)->lpVtbl->Release(This) 7135 /*** IProcessInitControl methods ***/ 7136 #define IProcessInitControl_ResetInitializerTimeout(This,dwSecondsRemaining) (This)->lpVtbl->ResetInitializerTimeout(This,dwSecondsRemaining) 7137 #else 7138 /*** IUnknown methods ***/ 7139 static FORCEINLINE HRESULT IProcessInitControl_QueryInterface(IProcessInitControl* This,REFIID riid,void **ppvObject) { 7140 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7141 } 7142 static FORCEINLINE ULONG IProcessInitControl_AddRef(IProcessInitControl* This) { 7143 return This->lpVtbl->AddRef(This); 7144 } 7145 static FORCEINLINE ULONG IProcessInitControl_Release(IProcessInitControl* This) { 7146 return This->lpVtbl->Release(This); 7147 } 7148 /*** IProcessInitControl methods ***/ 7149 static FORCEINLINE HRESULT IProcessInitControl_ResetInitializerTimeout(IProcessInitControl* This,DWORD dwSecondsRemaining) { 7150 return This->lpVtbl->ResetInitializerTimeout(This,dwSecondsRemaining); 7151 } 7152 #endif 7153 #endif 7154 7155 #endif 7156 7157 HRESULT STDMETHODCALLTYPE IProcessInitControl_ResetInitializerTimeout_Proxy( 7158 IProcessInitControl* This, 7159 DWORD dwSecondsRemaining); 7160 void __RPC_STUB IProcessInitControl_ResetInitializerTimeout_Stub( 7161 IRpcStubBuffer* This, 7162 IRpcChannelBuffer* pRpcChannelBuffer, 7163 PRPC_MESSAGE pRpcMessage, 7164 DWORD* pdwStubPhase); 7165 7166 #endif /* __IProcessInitControl_INTERFACE_DEFINED__ */ 7167 7168 7169 /***************************************************************************** 7170 * IFastRundown interface 7171 */ 7172 #ifndef __IFastRundown_INTERFACE_DEFINED__ 7173 #define __IFastRundown_INTERFACE_DEFINED__ 7174 7175 DEFINE_GUID(IID_IFastRundown, 0x00000040, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 7176 #if defined(__cplusplus) && !defined(CINTERFACE) 7177 MIDL_INTERFACE("00000040-0000-0000-c000-000000000046") 7178 IFastRundown : public IUnknown 7179 { 7180 }; 7181 #ifdef __CRT_UUID_DECL 7182 __CRT_UUID_DECL(IFastRundown, 0x00000040, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 7183 #endif 7184 #else 7185 typedef struct IFastRundownVtbl { 7186 BEGIN_INTERFACE 7187 7188 /*** IUnknown methods ***/ 7189 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7190 IFastRundown* This, 7191 REFIID riid, 7192 void **ppvObject); 7193 7194 ULONG (STDMETHODCALLTYPE *AddRef)( 7195 IFastRundown* This); 7196 7197 ULONG (STDMETHODCALLTYPE *Release)( 7198 IFastRundown* This); 7199 7200 END_INTERFACE 7201 } IFastRundownVtbl; 7202 interface IFastRundown { 7203 CONST_VTBL IFastRundownVtbl* lpVtbl; 7204 }; 7205 7206 #ifdef COBJMACROS 7207 #ifndef WIDL_C_INLINE_WRAPPERS 7208 /*** IUnknown methods ***/ 7209 #define IFastRundown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7210 #define IFastRundown_AddRef(This) (This)->lpVtbl->AddRef(This) 7211 #define IFastRundown_Release(This) (This)->lpVtbl->Release(This) 7212 #else 7213 /*** IUnknown methods ***/ 7214 static FORCEINLINE HRESULT IFastRundown_QueryInterface(IFastRundown* This,REFIID riid,void **ppvObject) { 7215 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7216 } 7217 static FORCEINLINE ULONG IFastRundown_AddRef(IFastRundown* This) { 7218 return This->lpVtbl->AddRef(This); 7219 } 7220 static FORCEINLINE ULONG IFastRundown_Release(IFastRundown* This) { 7221 return This->lpVtbl->Release(This); 7222 } 7223 #endif 7224 #endif 7225 7226 #endif 7227 7228 7229 #endif /* __IFastRundown_INTERFACE_DEFINED__ */ 7230 7231 7232 typedef enum CO_MARSHALING_CONTEXT_ATTRIBUTES { 7233 CO_MARSHALING_SOURCE_IS_APP_CONTAINER = 0 7234 } CO_MARSHALING_CONTEXT_ATTRIBUTES; 7235 7236 /***************************************************************************** 7237 * IMarshalingStream interface 7238 */ 7239 #ifndef __IMarshalingStream_INTERFACE_DEFINED__ 7240 #define __IMarshalingStream_INTERFACE_DEFINED__ 7241 7242 DEFINE_GUID(IID_IMarshalingStream, 0xd8f2f5e6, 0x6102, 0x4863, 0x9f,0x26, 0x38,0x9a,0x46,0x76,0xef,0xde); 7243 #if defined(__cplusplus) && !defined(CINTERFACE) 7244 MIDL_INTERFACE("d8f2f5e6-6102-4863-9f26-389a4676efde") 7245 IMarshalingStream : public IStream 7246 { 7247 virtual HRESULT STDMETHODCALLTYPE GetMarshalingContextAttribute( 7248 CO_MARSHALING_CONTEXT_ATTRIBUTES attribute, 7249 ULONG_PTR *pAttributeValue) = 0; 7250 7251 }; 7252 #ifdef __CRT_UUID_DECL 7253 __CRT_UUID_DECL(IMarshalingStream, 0xd8f2f5e6, 0x6102, 0x4863, 0x9f,0x26, 0x38,0x9a,0x46,0x76,0xef,0xde) 7254 #endif 7255 #else 7256 typedef struct IMarshalingStreamVtbl { 7257 BEGIN_INTERFACE 7258 7259 /*** IUnknown methods ***/ 7260 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7261 IMarshalingStream* This, 7262 REFIID riid, 7263 void **ppvObject); 7264 7265 ULONG (STDMETHODCALLTYPE *AddRef)( 7266 IMarshalingStream* This); 7267 7268 ULONG (STDMETHODCALLTYPE *Release)( 7269 IMarshalingStream* This); 7270 7271 /*** ISequentialStream methods ***/ 7272 HRESULT (STDMETHODCALLTYPE *Read)( 7273 IMarshalingStream* This, 7274 void *pv, 7275 ULONG cb, 7276 ULONG *pcbRead); 7277 7278 HRESULT (STDMETHODCALLTYPE *Write)( 7279 IMarshalingStream* This, 7280 const void *pv, 7281 ULONG cb, 7282 ULONG *pcbWritten); 7283 7284 /*** IStream methods ***/ 7285 HRESULT (STDMETHODCALLTYPE *Seek)( 7286 IMarshalingStream* This, 7287 LARGE_INTEGER dlibMove, 7288 DWORD dwOrigin, 7289 ULARGE_INTEGER *plibNewPosition); 7290 7291 HRESULT (STDMETHODCALLTYPE *SetSize)( 7292 IMarshalingStream* This, 7293 ULARGE_INTEGER libNewSize); 7294 7295 HRESULT (STDMETHODCALLTYPE *CopyTo)( 7296 IMarshalingStream* This, 7297 IStream *pstm, 7298 ULARGE_INTEGER cb, 7299 ULARGE_INTEGER *pcbRead, 7300 ULARGE_INTEGER *pcbWritten); 7301 7302 HRESULT (STDMETHODCALLTYPE *Commit)( 7303 IMarshalingStream* This, 7304 DWORD grfCommitFlags); 7305 7306 HRESULT (STDMETHODCALLTYPE *Revert)( 7307 IMarshalingStream* This); 7308 7309 HRESULT (STDMETHODCALLTYPE *LockRegion)( 7310 IMarshalingStream* This, 7311 ULARGE_INTEGER libOffset, 7312 ULARGE_INTEGER cb, 7313 DWORD dwLockType); 7314 7315 HRESULT (STDMETHODCALLTYPE *UnlockRegion)( 7316 IMarshalingStream* This, 7317 ULARGE_INTEGER libOffset, 7318 ULARGE_INTEGER cb, 7319 DWORD dwLockType); 7320 7321 HRESULT (STDMETHODCALLTYPE *Stat)( 7322 IMarshalingStream* This, 7323 STATSTG *pstatstg, 7324 DWORD grfStatFlag); 7325 7326 HRESULT (STDMETHODCALLTYPE *Clone)( 7327 IMarshalingStream* This, 7328 IStream **ppstm); 7329 7330 /*** IMarshalingStream methods ***/ 7331 HRESULT (STDMETHODCALLTYPE *GetMarshalingContextAttribute)( 7332 IMarshalingStream* This, 7333 CO_MARSHALING_CONTEXT_ATTRIBUTES attribute, 7334 ULONG_PTR *pAttributeValue); 7335 7336 END_INTERFACE 7337 } IMarshalingStreamVtbl; 7338 interface IMarshalingStream { 7339 CONST_VTBL IMarshalingStreamVtbl* lpVtbl; 7340 }; 7341 7342 #ifdef COBJMACROS 7343 #ifndef WIDL_C_INLINE_WRAPPERS 7344 /*** IUnknown methods ***/ 7345 #define IMarshalingStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7346 #define IMarshalingStream_AddRef(This) (This)->lpVtbl->AddRef(This) 7347 #define IMarshalingStream_Release(This) (This)->lpVtbl->Release(This) 7348 /*** ISequentialStream methods ***/ 7349 #define IMarshalingStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) 7350 #define IMarshalingStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) 7351 /*** IStream methods ***/ 7352 #define IMarshalingStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition) 7353 #define IMarshalingStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize) 7354 #define IMarshalingStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten) 7355 #define IMarshalingStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) 7356 #define IMarshalingStream_Revert(This) (This)->lpVtbl->Revert(This) 7357 #define IMarshalingStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType) 7358 #define IMarshalingStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType) 7359 #define IMarshalingStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) 7360 #define IMarshalingStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm) 7361 /*** IMarshalingStream methods ***/ 7362 #define IMarshalingStream_GetMarshalingContextAttribute(This,attribute,pAttributeValue) (This)->lpVtbl->GetMarshalingContextAttribute(This,attribute,pAttributeValue) 7363 #else 7364 /*** IUnknown methods ***/ 7365 static FORCEINLINE HRESULT IMarshalingStream_QueryInterface(IMarshalingStream* This,REFIID riid,void **ppvObject) { 7366 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7367 } 7368 static FORCEINLINE ULONG IMarshalingStream_AddRef(IMarshalingStream* This) { 7369 return This->lpVtbl->AddRef(This); 7370 } 7371 static FORCEINLINE ULONG IMarshalingStream_Release(IMarshalingStream* This) { 7372 return This->lpVtbl->Release(This); 7373 } 7374 /*** ISequentialStream methods ***/ 7375 static FORCEINLINE HRESULT IMarshalingStream_Read(IMarshalingStream* This,void *pv,ULONG cb,ULONG *pcbRead) { 7376 return This->lpVtbl->Read(This,pv,cb,pcbRead); 7377 } 7378 static FORCEINLINE HRESULT IMarshalingStream_Write(IMarshalingStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) { 7379 return This->lpVtbl->Write(This,pv,cb,pcbWritten); 7380 } 7381 /*** IStream methods ***/ 7382 static FORCEINLINE HRESULT IMarshalingStream_Seek(IMarshalingStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) { 7383 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition); 7384 } 7385 static FORCEINLINE HRESULT IMarshalingStream_SetSize(IMarshalingStream* This,ULARGE_INTEGER libNewSize) { 7386 return This->lpVtbl->SetSize(This,libNewSize); 7387 } 7388 static FORCEINLINE HRESULT IMarshalingStream_CopyTo(IMarshalingStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) { 7389 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten); 7390 } 7391 static FORCEINLINE HRESULT IMarshalingStream_Commit(IMarshalingStream* This,DWORD grfCommitFlags) { 7392 return This->lpVtbl->Commit(This,grfCommitFlags); 7393 } 7394 static FORCEINLINE HRESULT IMarshalingStream_Revert(IMarshalingStream* This) { 7395 return This->lpVtbl->Revert(This); 7396 } 7397 static FORCEINLINE HRESULT IMarshalingStream_LockRegion(IMarshalingStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { 7398 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType); 7399 } 7400 static FORCEINLINE HRESULT IMarshalingStream_UnlockRegion(IMarshalingStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { 7401 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType); 7402 } 7403 static FORCEINLINE HRESULT IMarshalingStream_Stat(IMarshalingStream* This,STATSTG *pstatstg,DWORD grfStatFlag) { 7404 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag); 7405 } 7406 static FORCEINLINE HRESULT IMarshalingStream_Clone(IMarshalingStream* This,IStream **ppstm) { 7407 return This->lpVtbl->Clone(This,ppstm); 7408 } 7409 /*** IMarshalingStream methods ***/ 7410 static FORCEINLINE HRESULT IMarshalingStream_GetMarshalingContextAttribute(IMarshalingStream* This,CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,ULONG_PTR *pAttributeValue) { 7411 return This->lpVtbl->GetMarshalingContextAttribute(This,attribute,pAttributeValue); 7412 } 7413 #endif 7414 #endif 7415 7416 #endif 7417 7418 HRESULT STDMETHODCALLTYPE IMarshalingStream_GetMarshalingContextAttribute_Proxy( 7419 IMarshalingStream* This, 7420 CO_MARSHALING_CONTEXT_ATTRIBUTES attribute, 7421 ULONG_PTR *pAttributeValue); 7422 void __RPC_STUB IMarshalingStream_GetMarshalingContextAttribute_Stub( 7423 IRpcStubBuffer* This, 7424 IRpcChannelBuffer* pRpcChannelBuffer, 7425 PRPC_MESSAGE pRpcMessage, 7426 DWORD* pdwStubPhase); 7427 7428 #endif /* __IMarshalingStream_INTERFACE_DEFINED__ */ 7429 7430 #endif 7431 7432 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 7433 EXTERN_C const GUID IID_ICallbackWithNoReentrancyToApplicationSTA; 7434 #endif 7435 #define _OBJIDLBASE_ 7436 #endif 7437 /* Begin additional prototypes for all interfaces */ 7438 7439 7440 /* End additional prototypes */ 7441 7442 #ifdef __cplusplus 7443 } 7444 #endif 7445 7446 #endif /* __objidlbase_h__ */ 7447