netmeeting.idl 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. //+---------------------------------------------------------------------------
  2. //
  3. // Contents: NetMeeting ActiveX object interfaces
  4. //
  5. // Copyright 1995 - 2002 Microsoft Corporation. All Rights Reserved.
  6. //
  7. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  8. // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  9. // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  10. // PARTICULAR PURPOSE.
  11. //----------------------------------------------------------------------------
  12. import "ocidl.idl";
  13. ///////////////////////////////////////////////////////////////////////////////////////////////
  14. // INetMeeting DISPIDs
  15. #define NETMEETING_DISPID_START (100)
  16. #define DISPID_Version (NETMEETING_DISPID_START + 0)
  17. #define DISPID_UnDock (NETMEETING_DISPID_START + 1)
  18. #define DISPID_IsInConference (NETMEETING_DISPID_START + 2)
  19. #define DISPID_CallTo (NETMEETING_DISPID_START + 3)
  20. #define DISPID_LeaveConference (NETMEETING_DISPID_START + 4)
  21. #define NETMEETING_DISPID_END (NETMEETING_DISPID_START + 100)
  22. #define NETMEETING_EVENTS_DISPID_START (NETMEETING_DISPID_END + 1)
  23. #define DISPID_ConferenceStarted (NETMEETING_EVENTS_DISPID_START + 1)
  24. #define DISPID_ConferenceEnded (NETMEETING_EVENTS_DISPID_START + 2)
  25. #define UUID_INetMeeting 5572984E-7A76-11d2-9334-0000F875AE17
  26. #define UUID_NetMeetingLib 5CE55CD7-5179-11D2-931D-0000F875AE17
  27. #define UUID__INetMeetingEvents 3E9BAF2C-7A79-11d2-9334-0000F875AE17
  28. #define UUID_NetMeeting 3E9BAF2D-7A79-11d2-9334-0000F875AE17
  29. [
  30. object,
  31. uuid(UUID_INetMeeting),
  32. dual, // Supports early and late binding
  33. hidden, // Default interfaces should be marked as "hidden"
  34. nonextensible, // Allows VB to use Early Binding...
  35. helpstring("NetMeeting Application Interface")
  36. ]
  37. interface INetMeeting : IDispatch
  38. {
  39. [id(DISPID_Version), helpstring("Get the build number for NetMeeting on the local machine")]
  40. HRESULT Version([out,retval] long* pdwBuildNumber);
  41. [id(DISPID_UnDock), helpstring("Undock a copy of the UI")]
  42. HRESULT UnDock();
  43. [id(DISPID_IsInConference), helpstring("Is the local user in a conference")]
  44. HRESULT IsInConference([out,retval] BOOL *pbInConference);
  45. [id(DISPID_CallTo), helpstring("Place a NetMeeting call using CallTo addressing")]
  46. HRESULT CallTo([in] BSTR strCallToString);
  47. [id(DISPID_LeaveConference), helpstring("Leave the current conference")]
  48. HRESULT LeaveConference();
  49. };
  50. // These version numbers should match the version attribute in the library definitoen below
  51. cpp_quote("enum { NetMeetingLib_Ver_Major = 1};")
  52. cpp_quote("enum { NetMeetingLib_Ver_Minor = 1};")
  53. [
  54. uuid(UUID_NetMeetingLib),
  55. version(1.1),
  56. helpstring("NetMeeting 1.1 Type Library")
  57. ]
  58. library NetMeetingLib
  59. {
  60. importlib("stdole32.tlb");
  61. importlib("stdole2.tlb");
  62. [
  63. uuid(UUID__INetMeetingEvents),
  64. helpstring("NetMeeting Events Interface"),
  65. ]
  66. dispinterface _INetMeetingEvents
  67. {
  68. properties:
  69. methods:
  70. [id(DISPID_ConferenceStarted), helpstring("Event triggered when a call is accepted")]
  71. void ConferenceStarted();
  72. [id(DISPID_ConferenceEnded), helpstring("Event triggered when the current call is over")]
  73. void ConferenceEnded();
  74. }
  75. [
  76. uuid(UUID_NetMeeting),
  77. helpstring("NetMeeting Application")
  78. ]
  79. coclass NetMeeting
  80. {
  81. [default] interface INetMeeting;
  82. [default, source] dispinterface _INetMeetingEvents;
  83. };
  84. };