RNSO.idl
上传用户:lianquan
上传日期:2007-01-02
资源大小:197k
文件大小:2k
源码类别:

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. // RNSO.idl : IDL source for RNSO.dll
  2. //
  3. // This file will be processed by the MIDL tool to
  4. // produce the type library (RNSO.tlb) and marshalling code.
  5. import "oaidl.idl";
  6. import "ocidl.idl";
  7. [
  8. uuid(9398D870-4F98-11D2-A93D-BE57B2000000),
  9. helpstring("IGenericObserver Interface"),
  10. pointer_default(unique)
  11. ]
  12. interface IGenericObserver : IUnknown
  13. {
  14. [helpstring("method Subscribe")] HRESULT Subscribe([in] DWORD dwSubjectID);
  15. [helpstring("method Unsubscribe")] HRESULT Unsubscribe([in]DWORD dwSubjectID,[in]BOOL bAllSubjects);
  16. [helpstring("method IsSubscribed")] HRESULT IsSubscribed(DWORD dwSubjectID);
  17. [helpstring("method GetCountSubscriptions")] HRESULT GetCountSubscriptions([out] long * lCount);
  18. [helpstring("method GetCountSubscribers")] HRESULT GetCountSubscribers([out] long * lCount);
  19. [helpstring("method Notify")] HRESULT Notify([in] long nSizeNotification,[in,size_is(nSizeNotification)] [ptr] byte* pNotification);
  20. [helpstring("method FindObjectID")] HRESULT FindObjectID([in] BSTR strname,[out]DWORD * dwObjectID);
  21. [helpstring("method GetObjectID")] HRESULT GetObjectID([out]DWORD * dwID);
  22. [helpstring("method GetName")] HRESULT GetName([out,retval]BSTR *strName);
  23. [helpstring("method SetName")] HRESULT SetName([in,string] BSTR strName);
  24. };
  25. [
  26. uuid(E47357D4-5074-11D2-A93F-900842000000),
  27. helpstring("IGenericObserverNotification Interface"),
  28. pointer_default(unique)
  29. ]
  30. interface IGenericObserverNotification: IUnknown
  31. {
  32. [helpstring("method OnNotify")] HRESULT OnNotify([in] DWORD dwSubjectSender,[in] long nSizeNotification,[in,size_is(nSizeNotification)] [ptr] byte* pNotification);
  33. [helpstring("method OnNotifySubjectBroken")] HRESULT OnNotifySubjectBroken([in] DWORD dwSubjectID);
  34. };
  35. [
  36. uuid(556C55A0-4F26-11D2-A93C-EE91CF000000),
  37. version(1.0),
  38. helpstring("RNSO 1.0 Type Library")
  39. ]
  40. library RNSOLib
  41. {
  42. importlib("stdole32.tlb");
  43. importlib("stdole2.tlb");
  44. [
  45. uuid(9398D871-4F98-11D2-A93D-BE57B2000000),
  46. helpstring("GenericObserver Class")
  47. ]
  48. coclass GenericObserver
  49. {
  50. [default] interface IGenericObserver;
  51. [default,source] interface IGenericObserverNotification;
  52. };
  53. };