IUnknownDemo.h
上传用户:weisheen
上传日期:2022-07-09
资源大小:19390k
文件大小:8k
源码类别:

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 5.01.0164 */
  3. /* at Mon Feb 22 16:47:04 2010
  4.  */
  5. /* Compiler settings for D:VCday09IUnknownDemoIUnknownDemo.idl:
  6.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  7.     error checks: allocation ref bounds_check enum stub_data 
  8. */
  9. //@@MIDL_FILE_HEADING(  )
  10. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  11. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  12. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  13. #endif
  14. #include "rpc.h"
  15. #include "rpcndr.h"
  16. #ifndef __RPCNDR_H_VERSION__
  17. #error this stub requires an updated version of <rpcndr.h>
  18. #endif // __RPCNDR_H_VERSION__
  19. #ifndef COM_NO_WINDOWS_H
  20. #include "windows.h"
  21. #include "ole2.h"
  22. #endif /*COM_NO_WINDOWS_H*/
  23. #ifndef __IUnknownDemo_h__
  24. #define __IUnknownDemo_h__
  25. #ifdef __cplusplus
  26. extern "C"{
  27. #endif 
  28. /* Forward Declarations */ 
  29. #ifndef __IIMyObj_FWD_DEFINED__
  30. #define __IIMyObj_FWD_DEFINED__
  31. typedef interface IIMyObj IIMyObj;
  32. #endif  /* __IIMyObj_FWD_DEFINED__ */
  33. #ifndef __IHello_FWD_DEFINED__
  34. #define __IHello_FWD_DEFINED__
  35. typedef interface IHello IHello;
  36. #endif  /* __IHello_FWD_DEFINED__ */
  37. #ifndef __IMyObj_FWD_DEFINED__
  38. #define __IMyObj_FWD_DEFINED__
  39. #ifdef __cplusplus
  40. typedef class IMyObj IMyObj;
  41. #else
  42. typedef struct IMyObj IMyObj;
  43. #endif /* __cplusplus */
  44. #endif  /* __IMyObj_FWD_DEFINED__ */
  45. /* header files for imported files */
  46. #include "oaidl.h"
  47. #include "ocidl.h"
  48. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  49. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  50. #ifndef __IIMyObj_INTERFACE_DEFINED__
  51. #define __IIMyObj_INTERFACE_DEFINED__
  52. /* interface IIMyObj */
  53. /* [unique][helpstring][uuid][object] */ 
  54. EXTERN_C const IID IID_IIMyObj;
  55. #if defined(__cplusplus) && !defined(CINTERFACE)
  56.     
  57.     MIDL_INTERFACE("7E4933F5-9F96-4D4C-ABF1-8C6E0B4C8EE9")
  58.     IIMyObj : public IUnknown
  59.     {
  60.     public:
  61.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE add( 
  62.             /* [in] */ int a,
  63.             /* [in] */ int b,
  64.             /* [out] */ int __RPC_FAR *c) = 0;
  65.         
  66.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE sub( 
  67.             /* [in] */ VARIANT a,
  68.             /* [in] */ VARIANT b,
  69.             /* [out] */ VARIANT __RPC_FAR *c) = 0;
  70.         
  71.     };
  72.     
  73. #else  /* C style interface */
  74.     typedef struct IIMyObjVtbl
  75.     {
  76.         BEGIN_INTERFACE
  77.         
  78.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  79.             IIMyObj __RPC_FAR * This,
  80.             /* [in] */ REFIID riid,
  81.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  82.         
  83.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  84.             IIMyObj __RPC_FAR * This);
  85.         
  86.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  87.             IIMyObj __RPC_FAR * This);
  88.         
  89.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *add )( 
  90.             IIMyObj __RPC_FAR * This,
  91.             /* [in] */ int a,
  92.             /* [in] */ int b,
  93.             /* [out] */ int __RPC_FAR *c);
  94.         
  95.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *sub )( 
  96.             IIMyObj __RPC_FAR * This,
  97.             /* [in] */ VARIANT a,
  98.             /* [in] */ VARIANT b,
  99.             /* [out] */ VARIANT __RPC_FAR *c);
  100.         
  101.         END_INTERFACE
  102.     } IIMyObjVtbl;
  103.     interface IIMyObj
  104.     {
  105.         CONST_VTBL struct IIMyObjVtbl __RPC_FAR *lpVtbl;
  106.     };
  107.     
  108. #ifdef COBJMACROS
  109. #define IIMyObj_QueryInterface(This,riid,ppvObject)
  110.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  111. #define IIMyObj_AddRef(This)
  112.     (This)->lpVtbl -> AddRef(This)
  113. #define IIMyObj_Release(This)
  114.     (This)->lpVtbl -> Release(This)
  115. #define IIMyObj_add(This,a,b,c)
  116.     (This)->lpVtbl -> add(This,a,b,c)
  117. #define IIMyObj_sub(This,a,b,c)
  118.     (This)->lpVtbl -> sub(This,a,b,c)
  119. #endif /* COBJMACROS */
  120. #endif  /* C style interface */
  121. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IIMyObj_add_Proxy( 
  122.     IIMyObj __RPC_FAR * This,
  123.     /* [in] */ int a,
  124.     /* [in] */ int b,
  125.     /* [out] */ int __RPC_FAR *c);
  126. void __RPC_STUB IIMyObj_add_Stub(
  127.     IRpcStubBuffer *This,
  128.     IRpcChannelBuffer *_pRpcChannelBuffer,
  129.     PRPC_MESSAGE _pRpcMessage,
  130.     DWORD *_pdwStubPhase);
  131. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IIMyObj_sub_Proxy( 
  132.     IIMyObj __RPC_FAR * This,
  133.     /* [in] */ VARIANT a,
  134.     /* [in] */ VARIANT b,
  135.     /* [out] */ VARIANT __RPC_FAR *c);
  136. void __RPC_STUB IIMyObj_sub_Stub(
  137.     IRpcStubBuffer *This,
  138.     IRpcChannelBuffer *_pRpcChannelBuffer,
  139.     PRPC_MESSAGE _pRpcMessage,
  140.     DWORD *_pdwStubPhase);
  141. #endif  /* __IIMyObj_INTERFACE_DEFINED__ */
  142. #ifndef __IHello_INTERFACE_DEFINED__
  143. #define __IHello_INTERFACE_DEFINED__
  144. /* interface IHello */
  145. /* [helpstring][uuid][object] */ 
  146. EXTERN_C const IID IID_IHello;
  147. #if defined(__cplusplus) && !defined(CINTERFACE)
  148.     
  149.     MIDL_INTERFACE("7E4933F5-9F96-4D4C-ABF1-8C6E0B4C8EEA")
  150.     IHello : public IUnknown
  151.     {
  152.     public:
  153.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE hello( 
  154.             /* [in] */ BSTR name,
  155.             /* [out] */ BSTR __RPC_FAR *result) = 0;
  156.         
  157.     };
  158.     
  159. #else  /* C style interface */
  160.     typedef struct IHelloVtbl
  161.     {
  162.         BEGIN_INTERFACE
  163.         
  164.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  165.             IHello __RPC_FAR * This,
  166.             /* [in] */ REFIID riid,
  167.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  168.         
  169.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  170.             IHello __RPC_FAR * This);
  171.         
  172.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  173.             IHello __RPC_FAR * This);
  174.         
  175.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *hello )( 
  176.             IHello __RPC_FAR * This,
  177.             /* [in] */ BSTR name,
  178.             /* [out] */ BSTR __RPC_FAR *result);
  179.         
  180.         END_INTERFACE
  181.     } IHelloVtbl;
  182.     interface IHello
  183.     {
  184.         CONST_VTBL struct IHelloVtbl __RPC_FAR *lpVtbl;
  185.     };
  186.     
  187. #ifdef COBJMACROS
  188. #define IHello_QueryInterface(This,riid,ppvObject)
  189.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  190. #define IHello_AddRef(This)
  191.     (This)->lpVtbl -> AddRef(This)
  192. #define IHello_Release(This)
  193.     (This)->lpVtbl -> Release(This)
  194. #define IHello_hello(This,name,result)
  195.     (This)->lpVtbl -> hello(This,name,result)
  196. #endif /* COBJMACROS */
  197. #endif  /* C style interface */
  198. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IHello_hello_Proxy( 
  199.     IHello __RPC_FAR * This,
  200.     /* [in] */ BSTR name,
  201.     /* [out] */ BSTR __RPC_FAR *result);
  202. void __RPC_STUB IHello_hello_Stub(
  203.     IRpcStubBuffer *This,
  204.     IRpcChannelBuffer *_pRpcChannelBuffer,
  205.     PRPC_MESSAGE _pRpcMessage,
  206.     DWORD *_pdwStubPhase);
  207. #endif  /* __IHello_INTERFACE_DEFINED__ */
  208. #ifndef __IUNKNOWNDEMOLib_LIBRARY_DEFINED__
  209. #define __IUNKNOWNDEMOLib_LIBRARY_DEFINED__
  210. /* library IUNKNOWNDEMOLib */
  211. /* [helpstring][version][uuid] */ 
  212. EXTERN_C const IID LIBID_IUNKNOWNDEMOLib;
  213. EXTERN_C const CLSID CLSID_IMyObj;
  214. #ifdef __cplusplus
  215. class DECLSPEC_UUID("864CDFA4-2E80-48AF-B366-CC9228E364B9")
  216. IMyObj;
  217. #endif
  218. #endif /* __IUNKNOWNDEMOLib_LIBRARY_DEFINED__ */
  219. /* Additional Prototypes for ALL interfaces */
  220. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  221. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  222. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  223. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  224. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  225. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  226. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  227. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  228. /* end of Additional Prototypes */
  229. #ifdef __cplusplus
  230. }
  231. #endif
  232. #endif