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

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 Fri Feb 26 16:20:22 2010
  4.  */
  5. /* Compiler settings for D:VCday11SmartPtrDemoSmartPtrDemo.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 __SmartPtrDemo_h__
  24. #define __SmartPtrDemo_h__
  25. #ifdef __cplusplus
  26. extern "C"{
  27. #endif 
  28. /* Forward Declarations */ 
  29. #ifndef __IMyAbc_FWD_DEFINED__
  30. #define __IMyAbc_FWD_DEFINED__
  31. typedef interface IMyAbc IMyAbc;
  32. #endif  /* __IMyAbc_FWD_DEFINED__ */
  33. #ifndef __MyAbc_FWD_DEFINED__
  34. #define __MyAbc_FWD_DEFINED__
  35. #ifdef __cplusplus
  36. typedef class MyAbc MyAbc;
  37. #else
  38. typedef struct MyAbc MyAbc;
  39. #endif /* __cplusplus */
  40. #endif  /* __MyAbc_FWD_DEFINED__ */
  41. /* header files for imported files */
  42. #include "oaidl.h"
  43. #include "ocidl.h"
  44. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  45. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  46. #ifndef __IMyAbc_INTERFACE_DEFINED__
  47. #define __IMyAbc_INTERFACE_DEFINED__
  48. /* interface IMyAbc */
  49. /* [unique][helpstring][dual][uuid][object] */ 
  50. EXTERN_C const IID IID_IMyAbc;
  51. #if defined(__cplusplus) && !defined(CINTERFACE)
  52.     
  53.     MIDL_INTERFACE("DA631CA4-7924-44A7-90F3-23B6C0F4004F")
  54.     IMyAbc : public IDispatch
  55.     {
  56.     public:
  57.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Hello( 
  58.             /* [in] */ BSTR name,
  59.             /* [out] */ BSTR __RPC_FAR *bstrResult) = 0;
  60.         
  61.     };
  62.     
  63. #else  /* C style interface */
  64.     typedef struct IMyAbcVtbl
  65.     {
  66.         BEGIN_INTERFACE
  67.         
  68.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  69.             IMyAbc __RPC_FAR * This,
  70.             /* [in] */ REFIID riid,
  71.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  72.         
  73.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  74.             IMyAbc __RPC_FAR * This);
  75.         
  76.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  77.             IMyAbc __RPC_FAR * This);
  78.         
  79.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  80.             IMyAbc __RPC_FAR * This,
  81.             /* [out] */ UINT __RPC_FAR *pctinfo);
  82.         
  83.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  84.             IMyAbc __RPC_FAR * This,
  85.             /* [in] */ UINT iTInfo,
  86.             /* [in] */ LCID lcid,
  87.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  88.         
  89.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  90.             IMyAbc __RPC_FAR * This,
  91.             /* [in] */ REFIID riid,
  92.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  93.             /* [in] */ UINT cNames,
  94.             /* [in] */ LCID lcid,
  95.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  96.         
  97.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  98.             IMyAbc __RPC_FAR * This,
  99.             /* [in] */ DISPID dispIdMember,
  100.             /* [in] */ REFIID riid,
  101.             /* [in] */ LCID lcid,
  102.             /* [in] */ WORD wFlags,
  103.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  104.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  105.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  106.             /* [out] */ UINT __RPC_FAR *puArgErr);
  107.         
  108.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Hello )( 
  109.             IMyAbc __RPC_FAR * This,
  110.             /* [in] */ BSTR name,
  111.             /* [out] */ BSTR __RPC_FAR *bstrResult);
  112.         
  113.         END_INTERFACE
  114.     } IMyAbcVtbl;
  115.     interface IMyAbc
  116.     {
  117.         CONST_VTBL struct IMyAbcVtbl __RPC_FAR *lpVtbl;
  118.     };
  119.     
  120. #ifdef COBJMACROS
  121. #define IMyAbc_QueryInterface(This,riid,ppvObject)
  122.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  123. #define IMyAbc_AddRef(This)
  124.     (This)->lpVtbl -> AddRef(This)
  125. #define IMyAbc_Release(This)
  126.     (This)->lpVtbl -> Release(This)
  127. #define IMyAbc_GetTypeInfoCount(This,pctinfo)
  128.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  129. #define IMyAbc_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  130.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  131. #define IMyAbc_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  132.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  133. #define IMyAbc_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  134.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  135. #define IMyAbc_Hello(This,name,bstrResult)
  136.     (This)->lpVtbl -> Hello(This,name,bstrResult)
  137. #endif /* COBJMACROS */
  138. #endif  /* C style interface */
  139. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMyAbc_Hello_Proxy( 
  140.     IMyAbc __RPC_FAR * This,
  141.     /* [in] */ BSTR name,
  142.     /* [out] */ BSTR __RPC_FAR *bstrResult);
  143. void __RPC_STUB IMyAbc_Hello_Stub(
  144.     IRpcStubBuffer *This,
  145.     IRpcChannelBuffer *_pRpcChannelBuffer,
  146.     PRPC_MESSAGE _pRpcMessage,
  147.     DWORD *_pdwStubPhase);
  148. #endif  /* __IMyAbc_INTERFACE_DEFINED__ */
  149. #ifndef __SMARTPTRDEMOLib_LIBRARY_DEFINED__
  150. #define __SMARTPTRDEMOLib_LIBRARY_DEFINED__
  151. /* library SMARTPTRDEMOLib */
  152. /* [helpstring][version][uuid] */ 
  153. EXTERN_C const IID LIBID_SMARTPTRDEMOLib;
  154. EXTERN_C const CLSID CLSID_MyAbc;
  155. #ifdef __cplusplus
  156. class DECLSPEC_UUID("F1FC69A8-2470-4744-A8BA-705DE4707D09")
  157. MyAbc;
  158. #endif
  159. #endif /* __SMARTPTRDEMOLib_LIBRARY_DEFINED__ */
  160. /* Additional Prototypes for ALL interfaces */
  161. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  162. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  163. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  164. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  165. /* end of Additional Prototypes */
  166. #ifdef __cplusplus
  167. }
  168. #endif
  169. #endif