Sdpblb.Idl
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:13k
源码类别:

模拟服务器

开发平台:

C/C++

  1. //
  2. // Copyright (c) 1998-1999  Microsoft Corporation
  3. //
  4. cpp_quote("/* Copyright (c) 1998-1999  Microsoft Corporation  */")
  5. // sdpblb.idl : IDL source for sdpblb.dll
  6. //
  7. midl_pragma warning( disable: 2039 )
  8. // This file will be processed by the MIDL tool to
  9. // produce the type library (sdpblb.tlb) and marshalling code.
  10. import "oaidl.idl";
  11. import "ocidl.idl";
  12. typedef enum BLOB_CHARACTER_SET
  13. {
  14.     BCS_ASCII   = 1,
  15.     BCS_UTF7    = 2,
  16.     BCS_UTF8    = 3
  17. } BLOB_CHARACTER_SET;
  18. [
  19.     object,
  20.     uuid(C259D7AA-C8AB-11D0-8D58-00C04FD91AC0),
  21.     dual,
  22.     helpstring("ITConferenceBlob Interface"),
  23.     pointer_default(unique)
  24. ]
  25. interface ITConferenceBlob : IDispatch
  26. {
  27.     [id(1), helpstring("method Init")] 
  28.     HRESULT Init(
  29.             [in] BSTR pName, 
  30.             [in] BLOB_CHARACTER_SET CharacterSet, 
  31.             [in] BSTR pBlob);
  32.     
  33.     [propget, id(2), helpstring("property CharacterSet")] 
  34.     HRESULT CharacterSet([out, retval] BLOB_CHARACTER_SET *pCharacterSet);
  35.     
  36.     [propget, id(3), helpstring("property ConferenceBlob")] 
  37.     HRESULT ConferenceBlob([out, retval] BSTR *ppBlob);
  38.     
  39.     [id(4), helpstring("method ConferenceBlob")] 
  40.     HRESULT SetConferenceBlob(
  41.         [in] BLOB_CHARACTER_SET CharacterSet, 
  42.         [in] BSTR pBlob);
  43. };
  44. [
  45.     object,
  46.     uuid(0CC1F053-CAEB-11D0-8D58-00C04FD91AC0),
  47.     dual,
  48.     helpstring("ITMedia Interface"),
  49.     pointer_default(unique)
  50. ]
  51. interface ITMedia : IDispatch
  52. {
  53.     [propget, id(1), helpstring("property MediaName")] 
  54.     HRESULT MediaName([out, retval] BSTR *ppMediaName);
  55.     
  56.     [propput, id(1), helpstring("property MediaName")]
  57.     HRESULT MediaName([in] BSTR pMediaName);
  58.     [propget, id(2), helpstring("property StartPort")] 
  59.     HRESULT StartPort([out, retval] LONG *pStartPort);
  60.     [propget, id(3), helpstring("property NumPorts")] 
  61.     HRESULT NumPorts([out, retval] LONG *pNumPorts);
  62.     [propget, id(4), helpstring("property TransportProtocol")] 
  63.     HRESULT TransportProtocol([out, retval] BSTR *ppProtocol);
  64.     [propput, id(4), helpstring("property TransportProtocol")] 
  65.     HRESULT TransportProtocol([in] BSTR pProtocol);
  66.     [propget, id(5), helpstring("property FormatCodes")] 
  67.     HRESULT FormatCodes([out, retval] VARIANT /*SAFEARRAY (BSTR)*/ *pVal);
  68.     [propput, id(5), helpstring("property FormatCodes")] 
  69.     HRESULT FormatCodes([in] VARIANT /*SAFEARRAY (BSTR)*/ NewVal);
  70.     [propget, id(6), helpstring("property MediaTitle")] 
  71.     HRESULT MediaTitle([out, retval] BSTR *ppMediaTitle);
  72.     [propput, id(6), helpstring("property MediaTitle")] 
  73.     HRESULT MediaTitle([in] BSTR pMediaTitle);
  74.     [id(7), helpstring("method SetPortInfo")] 
  75.     HRESULT SetPortInfo([in] LONG StartPort, [in] LONG NumPorts);
  76. };
  77. [
  78.     object,
  79.     uuid(CA8397BE-2FA4-11D1-9774-00C04FD91AC0),
  80.     helpstring("IEnumMedia interface"),
  81.     pointer_default(unique),
  82.     hidden
  83. ]
  84. interface IEnumMedia : IUnknown
  85. {
  86.     HRESULT Next(
  87.             [in]  ULONG celt,
  88.             [out] ITMedia **pVal,
  89.             [out] ULONG * pceltFetched
  90.             );
  91.     HRESULT Reset( void );
  92.     HRESULT Skip (
  93.             [in] ULONG celt
  94.             );
  95.     HRESULT Clone (
  96.             [out, retval] IEnumMedia ** ppEnum
  97.             );
  98. };
  99. [
  100.     object,
  101.     uuid(6A8E16A2-0ABC-11D1-976D-00C04FD91AC0),
  102.     dual,
  103.     helpstring("ITMediaCollection Interface"),
  104.     pointer_default(unique)
  105. ]
  106. interface ITMediaCollection : IDispatch
  107. {
  108.     [propget, helpstring("returns number of items in collection")] 
  109.     HRESULT Count(
  110.         [out, retval] LONG *pVal
  111.         );
  112.     [propget, id(DISPID_VALUE), 
  113.         helpstring("Given an index, returns an item in the collection.")] 
  114.     HRESULT Item(
  115.         [in] LONG Index, 
  116.         [out, retval] ITMedia **pVal
  117.         );
  118.     [propget, restricted, id(DISPID_NEWENUM), 
  119.         helpstring("returns an enumerator for the collection.")] 
  120.     HRESULT _NewEnum(
  121.         [out, retval] IUnknown **pVal
  122.         );
  123.     [propget, restricted, id(1), helpstring("returns the IEnumMedia enumeration interface that enumerates ITMedia")] 
  124.     HRESULT EnumerationIf(
  125.         [out, retval] IEnumMedia **pVal
  126.         );
  127.     [id(2), helpstring("method CreateMedia")] 
  128.     HRESULT Create([in] LONG Index, [out, retval] ITMedia **ppMedia);
  129.     [id(3), helpstring("method DeleteMedia")] 
  130.     HRESULT Delete([in] LONG Index);
  131. };
  132. [
  133.     object,
  134.     uuid(2652BB78-1516-11D1-9771-00C04FD91AC0),
  135.     dual,
  136.     helpstring("ITTime Interface"),
  137.     pointer_default(unique)
  138. ]
  139. interface ITTime : IDispatch
  140. {
  141.     [propget, id(1), helpstring("property StartTime")] 
  142.     HRESULT StartTime([out, retval] DOUBLE *pTime);
  143.     [propput, id(1), helpstring("property StartTime")] 
  144.     HRESULT StartTime([in] DOUBLE Time);
  145.     [propget, id(2), helpstring("property StopTime")] 
  146.     HRESULT StopTime([out, retval] DOUBLE *pTime);
  147.     [propput, id(2), helpstring("property StopTime")] 
  148.     HRESULT StopTime([in] DOUBLE Time);
  149. };
  150. [
  151.     object,
  152.     uuid(9055322E-2FA8-11D1-9774-00C04FD91AC0),
  153.     helpstring("IEnumTime interface"),
  154.     pointer_default(unique),
  155.     hidden
  156. ]
  157. interface IEnumTime : IUnknown
  158. {
  159.     HRESULT Next(
  160.             [in]  ULONG celt,
  161.             [out] ITTime **pVal,
  162.             [out] ULONG * pceltFetched
  163.             );
  164.     HRESULT Reset( void );
  165.     HRESULT Skip (
  166.             [in] ULONG celt
  167.             );
  168.     HRESULT Clone (
  169.             [out, retval] IEnumTime **ppEnum
  170.             );
  171. };
  172. [
  173.     object,
  174.     uuid(0CC1F04F-CAEB-11D0-8D58-00C04FD91AC0),
  175.     dual,
  176.     helpstring("ITTimeCollection Interface"),
  177.     pointer_default(unique)
  178. ]
  179. interface ITTimeCollection : IDispatch
  180. {
  181.     [propget, helpstring("returns number of items in collection")] 
  182.     HRESULT Count(
  183.         [out, retval] LONG *pVal
  184.         );
  185.     [propget, id(DISPID_VALUE), 
  186.         helpstring("Given an index, returns an item in the collection.")] 
  187.     HRESULT Item(
  188.         [in] LONG Index, 
  189.         [out, retval] ITTime **pVal
  190.         );
  191.     [propget, restricted, id(DISPID_NEWENUM), 
  192.         helpstring("returns an enumerator for the collection.")] 
  193.     HRESULT _NewEnum(
  194.         [out, retval] IUnknown **pVal
  195.         );
  196.     [propget, restricted, id(1), helpstring("returns the IEnumTime enumeration interface that enumerates ITTime")] 
  197.     HRESULT EnumerationIf(
  198.         [out, retval] IEnumTime **pVal
  199.         );
  200.     [id(2), helpstring("method CreateTime")] 
  201.     HRESULT Create([in] LONG Index, [out, retval] ITTime **ppTime);
  202.     [id(3), helpstring("method DeleteTime")] 
  203.     HRESULT Delete([in] LONG Index);
  204. };
  205. [
  206.     object,
  207.     uuid(9B2719D8-B696-11D0-A489-00C04FD91AC0),
  208.     dual,
  209.     helpstring("ITSdp Interface"),
  210.     pointer_default(unique)
  211. ]
  212. interface ITSdp : IDispatch
  213. {
  214.     [propget, id(1), helpstring("property IsValid")] 
  215.     HRESULT IsValid([out, retval] VARIANT_BOOL *pfIsValid);
  216.     [propget, id(2), helpstring("property ProtocolVersion")] 
  217.     HRESULT ProtocolVersion([out, retval] unsigned char *pProtocolVersion);
  218.     [propget, id(3), helpstring("property SessionId")] 
  219.     HRESULT SessionId([out, retval] DOUBLE *pSessionId);
  220.     [propget, id(4), helpstring("property SessionVersion")] 
  221.     HRESULT SessionVersion([out, retval] DOUBLE *pSessionVersion);
  222.     [propput, id(4), helpstring("property SessionVersion")] 
  223.     HRESULT SessionVersion([in] DOUBLE SessionVersion);
  224.     [propget, id(5), helpstring("property MachineAddress")] 
  225.     HRESULT MachineAddress([out, retval] BSTR *ppMachineAddress);
  226.     [propput, id(5), helpstring("property MachineAddress")] 
  227.     HRESULT MachineAddress([in] BSTR pMachineAddress);
  228.     [propget, id(6), helpstring("property Name")] 
  229.     HRESULT Name([out, retval] BSTR *ppName);
  230.     [propput, id(6), helpstring("property Name")] 
  231.     HRESULT Name([in] BSTR pName);
  232.     [propget, id(7), helpstring("property Description")] 
  233.     HRESULT Description([out, retval] BSTR *ppDescription);
  234.     [propput, id(7), helpstring("property Description")] 
  235.     HRESULT Description([in] BSTR pDescription);
  236.     [propget, id(8), helpstring("property Url")] 
  237.     HRESULT Url([out, retval] BSTR *ppUrl);
  238.     [propput, id(8), helpstring("property Url")] 
  239.     HRESULT Url([in] BSTR pUrl);
  240.     [id(9), helpstring("method GetEmailNames")] 
  241.     HRESULT GetEmailNames(
  242.         [out] VARIANT /*SAFEARRAY(BSTR)*/ *pAddresses, 
  243.         [out] VARIANT /*SAFEARRAY(BSTR)*/ *pNames
  244.         );
  245.     [id(10), helpstring("method SetEmailNames")] 
  246.     HRESULT SetEmailNames(
  247.         [in] VARIANT /*SAFEARRAY(BSTR)*/ Addresses, 
  248.         [in] VARIANT /*SAFEARRAY(BSTR)*/ Names
  249.         );
  250.     [id(11), helpstring("method GetPhoneNumbers")] 
  251.     HRESULT GetPhoneNumbers(
  252.         [out] VARIANT /*SAFEARRAY(BSTR)*/ *pNumbers, 
  253.         [out] VARIANT /*SAFEARRAY(BSTR)*/ *pNames
  254.         );
  255.     [id(12), helpstring("method SetPhoneNumbers")] 
  256.     HRESULT SetPhoneNumbers(
  257.         [in] VARIANT /*SAFEARRAY(BSTR)*/ Numbers, 
  258.         [in] /*SAFEARRAY(BSTR)*/ VARIANT Names
  259.         );
  260.     [propget, id(13), helpstring("property Originator")] 
  261.     HRESULT Originator([out, retval] BSTR *ppOriginator);
  262.     [propput, id(13), helpstring("property Originator")] 
  263.     HRESULT Originator([in] BSTR pOriginator);
  264.     [propget, id(14), helpstring("property MediaCollection")] 
  265.     HRESULT MediaCollection([out, retval] ITMediaCollection **ppMediaCollection);
  266.     [propget, id(15), helpstring("property TimeCollection")] 
  267.     HRESULT TimeCollection([out, retval] ITTimeCollection **ppTimeCollection);
  268. };
  269. [
  270.     object,
  271.     uuid(8fa381d4-c8c2-11d0-8d58-00c04fd91ac0),
  272.     dual,
  273.     helpstring("ITConnection Interface"),
  274.     pointer_default(unique)
  275. ]
  276. interface ITConnection : IDispatch
  277. {
  278.     [propget, id(1), helpstring("property NetworkType")] 
  279.     HRESULT NetworkType([out, retval] BSTR *ppNetworkType);
  280.     
  281.     [propput, id(1), helpstring("property NetworkType")] 
  282.     HRESULT NetworkType([in] BSTR pNetworkType);
  283.     
  284.     [propget, id(2), helpstring("property AddressType")] 
  285.     HRESULT AddressType([out, retval] BSTR *ppAddressType);
  286.     
  287.     [propput, id(2), helpstring("property AddressType")] 
  288.     HRESULT AddressType([in] BSTR pAddressType);
  289.     
  290.     [propget, id(3), helpstring("property StartAddress")] 
  291.     HRESULT StartAddress([out, retval] BSTR *ppStartAddress);
  292.     
  293.     [propget, id(4), helpstring("property NumAddresses")] 
  294.     HRESULT NumAddresses([out, retval] LONG *pNumAddresses);
  295.     
  296.     [propget, id(5), helpstring("property Ttl")] 
  297.     HRESULT Ttl([out, retval] unsigned char *pTtl);
  298.     
  299.     [propget, id(6), helpstring("property BandwidthModifier")] 
  300.     HRESULT BandwidthModifier([out, retval] BSTR *ppModifier);
  301.     
  302.     [propget, id(7), helpstring("property Bandwidth")] 
  303.     HRESULT Bandwidth([out, retval] DOUBLE *pBandwidth);
  304.     
  305.     [id(8), helpstring("method SetAddressInfo")] 
  306.     HRESULT SetAddressInfo(
  307.         [in] BSTR pStartAddress, 
  308.         [in] LONG NumAddresses, 
  309.         [in] unsigned char Ttl
  310.         );
  311.     
  312.     [id(9), helpstring("method SetBandwidthInfo")] 
  313.     HRESULT SetBandwidthInfo([in] BSTR pModifier, [in] DOUBLE Bandwidth);
  314.     
  315.     [id(10), helpstring("method SetEncryptionKey")] 
  316.     HRESULT SetEncryptionKey([in] BSTR pKeyType, [in] BSTR *ppKeyData);
  317.     
  318.     [id(11), helpstring("method GetEncryptionKey")] 
  319.     HRESULT GetEncryptionKey(
  320.         [out] BSTR *ppKeyType, 
  321.         [out] VARIANT_BOOL *pfValidKeyData, 
  322.         [out] BSTR *ppKeyData
  323.         );
  324. };
  325. [
  326.     object,
  327.     uuid(5037fb82-cae9-11d0-8d58-00c04fd91ac0),
  328.     dual,
  329.     helpstring("ITAttributeList Interface"),
  330.     pointer_default(unique)
  331. ]
  332. interface ITAttributeList : IDispatch
  333. {
  334.     [propget, id(1), helpstring("property Count")] 
  335.     HRESULT Count([out, retval] LONG *pVal);
  336.     [propget, id(2), helpstring("property Item")] 
  337.     HRESULT Item([in] LONG Index, [out, retval] BSTR *pVal);
  338.     [id(3), helpstring("method Add")] 
  339.     HRESULT Add([in] LONG Index, [in] BSTR pAttribute);
  340.     [id(4), helpstring("method Delete")] 
  341.     HRESULT Delete([in] LONG Index);
  342.     [propget, id(5), helpstring("property AttributeList")] 
  343.     HRESULT AttributeList([out, retval] VARIANT /*SAFEARRAY(BSTR)*/ *pVal);
  344.     [propput, id(5), helpstring("property AttributeList")] 
  345.     HRESULT AttributeList([in] VARIANT /*SAFEARRAY(BSTR)*/ newVal);
  346. };
  347. [
  348.     uuid(C259D79A-C8AB-11D0-8D58-00C04FD91AC0),
  349.     version(1.0),
  350.     helpstring("Microsoft Sdpblb 1.0 Type Library")
  351. ]
  352. library SDPBLBLib
  353. {
  354.     importlib("stdole32.tlb");
  355.     interface ITMedia;
  356.     interface ITTime;
  357.     interface ITConnection;
  358.     interface ITAttributeList;
  359.     [
  360.         uuid(9B2719DD-B696-11D0-A489-00C04FD91AC0),
  361.         helpstring("SdpConferenceBlob Class")
  362.     ]
  363.     coclass SdpConferenceBlob
  364.     {
  365.         [default] interface ITConferenceBlob;
  366.         interface ITSdp;
  367.     };
  368. };