1 /*** Autogenerated by WIDL 0.1 from servprov.idl - Do not edit ***/
5 #ifndef __WIDL_SERVPROV_H
6 #define __WIDL_SERVPROV_H
11 #ifndef __IServiceProvider_FWD_DEFINED__
12 #define __IServiceProvider_FWD_DEFINED__
13 typedef struct IServiceProvider IServiceProvider
;
16 typedef IServiceProvider
*LPSERVICEPROVIDER
;
18 /*****************************************************************************
19 * IServiceProvider interface
21 #ifndef __IServiceProvider_INTERFACE_DEFINED__
22 #define __IServiceProvider_INTERFACE_DEFINED__
24 DEFINE_GUID(IID_IServiceProvider
, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa);
25 #if defined(__cplusplus) && !defined(CINTERFACE)
26 struct IServiceProvider
: public IUnknown
28 virtual HRESULT STDMETHODCALLTYPE
QueryService(
31 void** ppvObject
) = 0;
35 typedef struct IServiceProviderVtbl IServiceProviderVtbl
;
36 struct IServiceProvider
{
37 const IServiceProviderVtbl
* lpVtbl
;
39 struct IServiceProviderVtbl
{
40 ICOM_MSVTABLE_COMPAT_FIELDS
42 /*** IUnknown methods ***/
43 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
44 IServiceProvider
* This
,
48 ULONG (STDMETHODCALLTYPE
*AddRef
)(
49 IServiceProvider
* This
);
51 ULONG (STDMETHODCALLTYPE
*Release
)(
52 IServiceProvider
* This
);
54 /*** IServiceProvider methods ***/
55 HRESULT (STDMETHODCALLTYPE
*QueryService
)(
56 IServiceProvider
* This
,
64 /*** IUnknown methods ***/
65 #define IServiceProvider_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
66 #define IServiceProvider_AddRef(p) (p)->lpVtbl->AddRef(p)
67 #define IServiceProvider_Release(p) (p)->lpVtbl->Release(p)
68 /*** IServiceProvider methods ***/
69 #define IServiceProvider_QueryService(p,a,b,c) (p)->lpVtbl->QueryService(p,a,b,c)
74 #define IServiceProvider_METHODS \
75 ICOM_MSVTABLE_COMPAT_FIELDS \
76 /*** IUnknown methods ***/ \
77 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
78 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
79 STDMETHOD_(ULONG,Release)(THIS) PURE; \
80 /*** IServiceProvider methods ***/ \
81 STDMETHOD_(HRESULT,QueryService)(THIS_ REFGUID guidService, REFIID riid, void** ppvObject) PURE;
83 HRESULT CALLBACK
IServiceProvider_RemoteQueryService_Proxy(
84 IServiceProvider
* This
,
87 IUnknown
** ppvObject
);
88 void __RPC_STUB
IServiceProvider_RemoteQueryService_Stub(
89 struct IRpcStubBuffer
* This
,
90 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
91 PRPC_MESSAGE pRpcMessage
,
93 HRESULT CALLBACK
IServiceProvider_QueryService_Proxy(
94 IServiceProvider
* This
,
98 HRESULT __RPC_STUB
IServiceProvider_QueryService_Stub(
99 IServiceProvider
* This
,
102 IUnknown
** ppvObject
);
104 #endif /* __IServiceProvider_INTERFACE_DEFINED__ */
109 #endif /* __WIDL_SERVPROV_H */