home *** CD-ROM | disk | FTP | other *** search
/ C Programming Starter Kit 2.0 / SamsPublishing-CProgrammingStarterKit-v2.0-Win31.iso / bc45 / msinc.pak / UNKNWN.H < prev    next >
C/C++ Source or Header  |  1997-07-23  |  8KB  |  312 lines

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 2.00.0102 */
  5. /* at Fri Apr 28 07:02:30 1995
  6.  */
  7. //@@MIDL_FILE_HEADING(  )
  8. #include "rpc.h"
  9. #include "rpcndr.h"
  10. #ifndef COM_NO_WINDOWS_H
  11. #include "windows.h"
  12. #include "ole2.h"
  13. #endif /*COM_NO_WINDOWS_H*/
  14.  
  15. #ifndef __unknwn_h__
  16. #define __unknwn_h__
  17.  
  18. #ifdef __cplusplus
  19. extern "C"{
  20. #endif 
  21.  
  22. /* Forward Declarations */ 
  23.  
  24. #ifndef __IUnknown_FWD_DEFINED__
  25. #define __IUnknown_FWD_DEFINED__
  26. typedef interface IUnknown IUnknown;
  27. #endif     /* __IUnknown_FWD_DEFINED__ */
  28.  
  29.  
  30. #ifndef __IClassFactory_FWD_DEFINED__
  31. #define __IClassFactory_FWD_DEFINED__
  32. typedef interface IClassFactory IClassFactory;
  33. #endif     /* __IClassFactory_FWD_DEFINED__ */
  34.  
  35.  
  36. /* header files for imported files */
  37. #include "wtypes.h"
  38.  
  39. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  40. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  41.  
  42. #ifndef __IUnknown_INTERFACE_DEFINED__
  43. #define __IUnknown_INTERFACE_DEFINED__
  44.  
  45. /****************************************
  46.  * Generated header for interface: IUnknown
  47.  * at Fri Apr 28 07:02:30 1995
  48.  * using MIDL 2.00.0102
  49.  ****************************************/
  50. /* [unique][uuid][object][local] */ 
  51.  
  52.  
  53. //+-------------------------------------------------------------------------
  54. //
  55. //  Microsoft Windows
  56. //  Copyright (C) Microsoft Corporation, 1992 - 1995.
  57. //
  58. //--------------------------------------------------------------------------
  59.             /* size is 4 */
  60. typedef /* [unique] */ IUnknown __RPC_FAR *LPUNKNOWN;
  61.  
  62. //////////////////////////////////////////////////////////////////
  63. // IID_IUnknown and all other system IIDs are provided in UUID.LIB
  64. // Link that library in with your proxies, clients and servers
  65. //////////////////////////////////////////////////////////////////
  66.  
  67. EXTERN_C const IID IID_IUnknown;
  68.  
  69. #if defined(__cplusplus) && !defined(CINTERFACE)
  70.     
  71.     interface IUnknown
  72.     {
  73.     public:
  74.         virtual HRESULT __stdcall QueryInterface( 
  75.             /* [in] */ REFIID riid,
  76.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  77.         
  78.         virtual ULONG __stdcall AddRef( void) = 0;
  79.         
  80.         virtual ULONG __stdcall Release( void) = 0;
  81.         
  82.     };
  83.     
  84. #else     /* C style interface */
  85.  
  86.     typedef struct IUnknownVtbl
  87.     {
  88.         
  89.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  90.             IUnknown __RPC_FAR * This,
  91.             /* [in] */ REFIID riid,
  92.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  93.         
  94.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  95.             IUnknown __RPC_FAR * This);
  96.         
  97.         ULONG ( __stdcall __RPC_FAR *Release )( 
  98.             IUnknown __RPC_FAR * This);
  99.         
  100.     } IUnknownVtbl;
  101.  
  102.     interface IUnknown
  103.     {
  104.         CONST_VTBL struct IUnknownVtbl __RPC_FAR *lpVtbl;
  105.     };
  106.  
  107.     
  108.  
  109. #ifdef COBJMACROS
  110.  
  111.  
  112. #define IUnknown_QueryInterface(This,riid,ppvObject)    \
  113.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  114.  
  115. #define IUnknown_AddRef(This)    \
  116.     (This)->lpVtbl -> AddRef(This)
  117.  
  118. #define IUnknown_Release(This)    \
  119.     (This)->lpVtbl -> Release(This)
  120.  
  121. #endif /* COBJMACROS */
  122.  
  123.  
  124. #endif     /* C style interface */
  125.  
  126.  
  127.  
  128. HRESULT __stdcall IUnknown_QueryInterface_Proxy( 
  129.     IUnknown __RPC_FAR * This,
  130.     /* [in] */ REFIID riid,
  131.     /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  132.  
  133.  
  134. void __RPC_STUB IUnknown_QueryInterface_Stub(
  135.     IRpcStubBuffer *This,
  136.     IRpcChannelBuffer *_pRpcChannelBuffer,
  137.     PRPC_MESSAGE _pRpcMessage,
  138.     DWORD *_pdwStubPhase);
  139.  
  140.  
  141. ULONG __stdcall IUnknown_AddRef_Proxy( 
  142.     IUnknown __RPC_FAR * This);
  143.  
  144.  
  145. void __RPC_STUB IUnknown_AddRef_Stub(
  146.     IRpcStubBuffer *This,
  147.     IRpcChannelBuffer *_pRpcChannelBuffer,
  148.     PRPC_MESSAGE _pRpcMessage,
  149.     DWORD *_pdwStubPhase);
  150.  
  151.  
  152. ULONG __stdcall IUnknown_Release_Proxy( 
  153.     IUnknown __RPC_FAR * This);
  154.  
  155.  
  156. void __RPC_STUB IUnknown_Release_Stub(
  157.     IRpcStubBuffer *This,
  158.     IRpcChannelBuffer *_pRpcChannelBuffer,
  159.     PRPC_MESSAGE _pRpcMessage,
  160.     DWORD *_pdwStubPhase);
  161.  
  162.  
  163.  
  164. #endif     /* __IUnknown_INTERFACE_DEFINED__ */
  165.  
  166.  
  167. #ifndef __IClassFactory_INTERFACE_DEFINED__
  168. #define __IClassFactory_INTERFACE_DEFINED__
  169.  
  170. /****************************************
  171.  * Generated header for interface: IClassFactory
  172.  * at Fri Apr 28 07:02:30 1995
  173.  * using MIDL 2.00.0102
  174.  ****************************************/
  175. /* [unique][uuid][object] */ 
  176.  
  177.  
  178.             /* size is 4 */
  179. typedef /* [unique] */ IClassFactory __RPC_FAR *LPCLASSFACTORY;
  180.  
  181.  
  182. EXTERN_C const IID IID_IClassFactory;
  183.  
  184. #if defined(__cplusplus) && !defined(CINTERFACE)
  185.     
  186.     interface IClassFactory : public IUnknown
  187.     {
  188.     public:
  189.         virtual /* [local] */ HRESULT __stdcall CreateInstance( 
  190.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  191.             /* [in] */ REFIID riid,
  192.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject) = 0;
  193.         
  194.         virtual HRESULT __stdcall LockServer( 
  195.             /* [in] */ BOOL fLock) = 0;
  196.         
  197.     };
  198.     
  199. #else     /* C style interface */
  200.  
  201.     typedef struct IClassFactoryVtbl
  202.     {
  203.         
  204.         HRESULT ( __stdcall __RPC_FAR *QueryInterface )( 
  205.             IClassFactory __RPC_FAR * This,
  206.             /* [in] */ REFIID riid,
  207.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  208.         
  209.         ULONG ( __stdcall __RPC_FAR *AddRef )( 
  210.             IClassFactory __RPC_FAR * This);
  211.         
  212.         ULONG ( __stdcall __RPC_FAR *Release )( 
  213.             IClassFactory __RPC_FAR * This);
  214.         
  215.         /* [local] */ HRESULT ( __stdcall __RPC_FAR *CreateInstance )( 
  216.             IClassFactory __RPC_FAR * This,
  217.             /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  218.             /* [in] */ REFIID riid,
  219.             /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  220.         
  221.         HRESULT ( __stdcall __RPC_FAR *LockServer )( 
  222.             IClassFactory __RPC_FAR * This,
  223.             /* [in] */ BOOL fLock);
  224.         
  225.     } IClassFactoryVtbl;
  226.  
  227.     interface IClassFactory
  228.     {
  229.         CONST_VTBL struct IClassFactoryVtbl __RPC_FAR *lpVtbl;
  230.     };
  231.  
  232.     
  233.  
  234. #ifdef COBJMACROS
  235.  
  236.  
  237. #define IClassFactory_QueryInterface(This,riid,ppvObject)    \
  238.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  239.  
  240. #define IClassFactory_AddRef(This)    \
  241.     (This)->lpVtbl -> AddRef(This)
  242.  
  243. #define IClassFactory_Release(This)    \
  244.     (This)->lpVtbl -> Release(This)
  245.  
  246.  
  247. #define IClassFactory_CreateInstance(This,pUnkOuter,riid,ppvObject)    \
  248.     (This)->lpVtbl -> CreateInstance(This,pUnkOuter,riid,ppvObject)
  249.  
  250. #define IClassFactory_LockServer(This,fLock)    \
  251.     (This)->lpVtbl -> LockServer(This,fLock)
  252.  
  253. #endif /* COBJMACROS */
  254.  
  255.  
  256. #endif     /* C style interface */
  257.  
  258.  
  259.  
  260. /* [call_as] */ HRESULT __stdcall IClassFactory_RemoteCreateInstance_Proxy( 
  261.     IClassFactory __RPC_FAR * This,
  262.     /* [in] */ REFIID riid,
  263.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  264.  
  265.  
  266. void __RPC_STUB IClassFactory_RemoteCreateInstance_Stub(
  267.     IRpcStubBuffer *This,
  268.     IRpcChannelBuffer *_pRpcChannelBuffer,
  269.     PRPC_MESSAGE _pRpcMessage,
  270.     DWORD *_pdwStubPhase);
  271.  
  272.  
  273. HRESULT __stdcall IClassFactory_LockServer_Proxy( 
  274.     IClassFactory __RPC_FAR * This,
  275.     /* [in] */ BOOL fLock);
  276.  
  277.  
  278. void __RPC_STUB IClassFactory_LockServer_Stub(
  279.     IRpcStubBuffer *This,
  280.     IRpcChannelBuffer *_pRpcChannelBuffer,
  281.     PRPC_MESSAGE _pRpcMessage,
  282.     DWORD *_pdwStubPhase);
  283.  
  284.  
  285.  
  286. #endif     /* __IClassFactory_INTERFACE_DEFINED__ */
  287.  
  288.  
  289. /* Additional Prototypes for ALL interfaces */
  290.  
  291. /* [local] */ HRESULT __stdcall IClassFactory_CreateInstance_Proxy( 
  292.     IClassFactory __RPC_FAR * This,
  293.     /* [unique][in] */ IUnknown __RPC_FAR *pUnkOuter,
  294.     /* [in] */ REFIID riid,
  295.     /* [out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  296.  
  297.  
  298. /* [call_as] */ HRESULT __stdcall IClassFactory_CreateInstance_Stub( 
  299.     IClassFactory __RPC_FAR * This,
  300.     /* [in] */ REFIID riid,
  301.     /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObject);
  302.  
  303.  
  304.  
  305. /* end of Additional Prototypes */
  306.  
  307. #ifdef __cplusplus
  308. }
  309. #endif
  310.  
  311. #endif
  312.