home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 June / PCFJune.iso / Xenon / C++ / FreeCommandLineTools.exe / Include / servprov.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-01-31  |  7.3 KB  |  252 lines

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