LABRADOR.IDL
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:2k
源码类别:

Windows编程

开发平台:

Visual C++

  1. // Labrador.idl : IDL source for Labrador.dll
  2. //
  3. // This file will be processed by the MIDL tool to
  4. // produce the type library (Labrador.tlb) and marshalling code.
  5. // This is a part of the ActiveX Template Library.
  6. // Copyright (C) 1996 Microsoft Corporation
  7. // All rights reserved.
  8. //
  9. // This source code is only intended as a supplement to the
  10. // ActiveX Template Library Reference and related
  11. // electronic documentation provided with the library.
  12. // See these sources for detailed information regarding the
  13. // ActiveX Template Library product.
  14. import "unknwn.idl";
  15. #define MAX_MY_BSTR_LEN 32
  16. typedef USHORT MY_BSTR[MAX_MY_BSTR_LEN];
  17.     [
  18.         object,
  19.         uuid(62A33E85-932A-11CF-B056-00A0C90348FA),
  20.         helpstring("IMammal Interface"),
  21.         pointer_default(unique)
  22.     ]
  23.     interface IMammal : IUnknown
  24.     {
  25.         import "oaidl.idl";
  26.         [id(1)] HRESULT GetSpeciesName([out] MY_BSTR p);
  27.         [id(2)] HRESULT IsAlive([out] BOOL* pBool);
  28.     };
  29.     [
  30.         object,
  31.         uuid(62A33E86-932A-11CF-B056-00A0C90348FA),
  32.         helpstring("IDog Interface"),
  33.         pointer_default(unique)
  34.     ]
  35.     interface IDog : IUnknown
  36.     {
  37.         import "oaidl.idl";
  38.         [id(3)] HRESULT GetPetName([out] MY_BSTR p);
  39.         [id(4)] HRESULT SetPetName([in] MY_BSTR p);
  40.         [id(5)] HRESULT IsBarking([out] BOOL* pBool);
  41.     };
  42. [
  43.     uuid(62A33E84-932A-11CF-B056-00A0C90348FA),
  44.     version(1.0),
  45.     helpstring("Labrador 1.0 Type Library")
  46. ]
  47. library LABRADORLib
  48. {
  49.     importlib("stdole32.tlb");
  50.     [
  51.         uuid(62A33E89-932A-11CF-B056-00A0C90348FA),
  52.         helpstring("Labrador Class")
  53.     ]
  54.     coclass Labrador
  55.     {
  56.         [default] interface IMammal;
  57.         interface IDog;
  58.     };
  59. };