1
2
3 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
4
5
6  /* File created by MIDL compiler version 7.00.0499 */
7 /* Compiler settings for servprov.idl:
8       Oicf, W1, Zp8, env=Win32 (32b run)
9       protocol : dce , ms_ext, c_ext, robust
10       error checks: allocation ref bounds_check enum stub_data 
11       VC __declspec() decoration level: 
12                __declspec(uuid()), __declspec(selectany), __declspec(novtable)
13                DECLSPEC_UUID(), MIDL_INTERFACE()
14 */
15 //@@MIDL_FILE_HEADING(  )
16
17 #pragma warning( disable: 4049 )  /* more than 64k source lines */
18
19
20 /* verify that the <rpcndr.h> version is high enough to compile this file*/
21 #ifndef __REQUIRED_RPCNDR_H_VERSION__
22 #define __REQUIRED_RPCNDR_H_VERSION__ 475
23 #endif
24
25 /* verify that the <rpcsal.h> version is high enough to compile this file*/
26 #ifndef __REQUIRED_RPCSAL_H_VERSION__
27 #define __REQUIRED_RPCSAL_H_VERSION__ 100
28 #endif
29
30 #include "rpc.h"
31 #include "rpcndr.h"
32
33 #ifndef __RPCNDR_H_VERSION__
34 #error this stub requires an updated version of <rpcndr.h>
35 #endif // __RPCNDR_H_VERSION__
36
37 #ifndef COM_NO_WINDOWS_H
38 #include "windows.h"
39 #include "ole2.h"
40 #endif /*COM_NO_WINDOWS_H*/
41
42 #ifndef __servprov_h__
43 #define __servprov_h__
44
45 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
46 #pragma once
47 #endif
48
49 /* Forward Declarations */ 
50
51 #ifndef __IServiceProvider_FWD_DEFINED__
52 #define __IServiceProvider_FWD_DEFINED__
53 typedef interface IServiceProvider IServiceProvider;
54 #endif     /* __IServiceProvider_FWD_DEFINED__ */
55
56
57 /* header files for imported files */
58 #include "objidl.h"
59
60 #ifdef __cplusplus
61 extern "C"{
62 #endif 
63
64
65 /* interface __MIDL_itf_servprov_0000_0000 */
66 /* [local] */ 
67
68 //=--------------------------------------------------------------------------=
69 // ServProv.h
70 //=--------------------------------------------------------------------------=
71 // (C) Copyright 1995-1999 Microsoft Corporation.  All Rights Reserved.
72 //
73 // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
74 // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
75 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
76 // PARTICULAR PURPOSE.
77 //=--------------------------------------------------------------------------=
78
79 #pragma comment(lib,"uuid.lib")
80
81 //---------------------------------------------------------------------------=
82 // IServiceProvider Interfaces.
83
84
85
86
87 extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0000_v0_0_c_ifspec;
88 extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0000_v0_0_s_ifspec;
89
90 #ifndef __IServiceProvider_INTERFACE_DEFINED__
91 #define __IServiceProvider_INTERFACE_DEFINED__
92
93 /* interface IServiceProvider */
94 /* [unique][uuid][object] */ 
95
96 typedef /* [unique] */  __RPC_unique_pointer IServiceProvider *LPSERVICEPROVIDER;
97
98 #if (_MSC_VER >= 1100) && defined(__cplusplus) && !defined(CINTERFACE)
99       EXTERN_C const IID IID_IServiceProvider;
100       extern "C++"
101       {
102              MIDL_INTERFACE("6d5140c1-7436-11ce-8034-00aa006009fa")
103              IServiceProvider : public IUnknown
104              {
105              public:
106                     virtual /* [local] */ HRESULT STDMETHODCALLTYPE QueryService( 
107                           /* [in] */ REFGUID guidService,
108                           /* [in] */ REFIID riid,
109                           /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject) = 0;
110                     
111                     template <class Q>
112                     HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, Q** pp)
113                     {
114                           return QueryService(guidService, __uuidof(Q), (void **)pp);
115                     }
116              };
117       }
118
119       /* [call_as] */ HRESULT STDMETHODCALLTYPE IServiceProvider_RemoteQueryService_Proxy( 
120              IServiceProvider __RPC_FAR * This,
121              /* [in] */ REFGUID guidService,
122              /* [in] */ REFIID riid,
123              /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
124
125       void __RPC_STUB IServiceProvider_RemoteQueryService_Stub(
126              IRpcStubBuffer *This,
127              IRpcChannelBuffer *_pRpcChannelBuffer,
128              PRPC_MESSAGE _pRpcMessage,
129              DWORD *_pdwStubPhase);
130
131 #else // VC6 Hack
132
133 EXTERN_C const IID IID_IServiceProvider;
134
135 #if defined(__cplusplus) && !defined(CINTERFACE)
Lines 136 ... 145 are skipped.
146       };
147       
148 #else     /* C style interface */
149
150       typedef struct IServiceProviderVtbl
151       {
152              BEGIN_INTERFACE
153              
154              HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
155                     IServiceProvider * This,
156                     /* [in] */ __RPC__in REFIID riid,
157                     /* [iid_is][out] */ 
158                     __RPC__deref_out  void **ppvObject);
159              
160              ULONG ( STDMETHODCALLTYPE *AddRef )( 
161                     IServiceProvider * This);
162              
163              ULONG ( STDMETHODCALLTYPE *Release )( 
164                     IServiceProvider * This);
165              
166              /* [local] */ HRESULT ( STDMETHODCALLTYPE *QueryService )( 
167                     IServiceProvider * This,
168                     /* [in] */ REFGUID guidService,
169                     /* [in] */ REFIID riid,
170                     /* [out] */ void **ppvObject);
171              
172              END_INTERFACE
173       } IServiceProviderVtbl;
174
175       interface IServiceProvider
176       {
177              CONST_VTBL struct IServiceProviderVtbl *lpVtbl;
178       };
179
180       
181
182 #ifdef COBJMACROS
183
184
185 #define IServiceProvider_QueryInterface(This,riid,ppvObject)    \
186       ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
187
188 #define IServiceProvider_AddRef(This)    \
189       ( (This)->lpVtbl -> AddRef(This) ) 
190
191 #define IServiceProvider_Release(This)    \
192       ( (This)->lpVtbl -> Release(This) ) 
193
194
195 #define IServiceProvider_QueryService(This,guidService,riid,ppvObject)    \
196       ( (This)->lpVtbl -> QueryService(This,guidService,riid,ppvObject) ) 
197
198 #endif /* COBJMACROS */
199
200
201 #endif     /* C style interface */
202
203
204
205 /* [call_as] */ HRESULT STDMETHODCALLTYPE IServiceProvider_RemoteQueryService_Proxy( 
206       IServiceProvider * This,
207       /* [in] */ __RPC__in REFGUID guidService,
208       /* [in] */ __RPC__in REFIID riid,
209       /* [iid_is][out] */ __RPC__deref_out_opt IUnknown **ppvObject);
210
211
212 void __RPC_STUB IServiceProvider_RemoteQueryService_Stub(
213       IRpcStubBuffer *This,
214       IRpcChannelBuffer *_pRpcChannelBuffer,
215       PRPC_MESSAGE _pRpcMessage,
216       DWORD *_pdwStubPhase);
217
218
219
220 #endif     /* __IServiceProvider_INTERFACE_DEFINED__ */
221
222
223 /* interface __MIDL_itf_servprov_0000_0001 */
224 /* [local] */ 
225
226 #endif // VC6 Hack
227
228
229 extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0001_v0_0_c_ifspec;
230 extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0001_v0_0_s_ifspec;
231
232 /* Additional Prototypes for ALL interfaces */
233
234 /* [local] */ HRESULT STDMETHODCALLTYPE IServiceProvider_QueryService_Proxy( 
235       IServiceProvider * This,
236       /* [in] */ REFGUID guidService,
237       /* [in] */ REFIID riid,
238       /* [out] */ void **ppvObject);
239
240
241 /* [call_as] */ HRESULT STDMETHODCALLTYPE IServiceProvider_QueryService_Stub( 
242       IServiceProvider * This,
243       /* [in] */ __RPC__in REFGUID guidService,
244       /* [in] */ __RPC__in REFIID riid,
245       /* [iid_is][out] */ __RPC__deref_out_opt IUnknown **ppvObject);
246
247
248
249 /* end of Additional Prototypes */
250
251 #ifdef __cplusplus
252 }
253 #endif
254
255 #endif
256
257
258
259