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

Windows编程

开发平台:

Visual C++

  1. /*+==========================================================================
  2.   File:      MICARS.IDL
  3.   Summary:   Interface definition file for use by the MIDL compiler.
  4.              Specifies the following custom interfaces: ICar, IUtility,
  5.              and ICruise. Part of the MARSHAL and MARSHAL2 code samples
  6.              which is used by later code samples in the series (eg, the
  7.              LOCSERVE, LOCCLIEN, APTSERVE, APTCLIEN, and REMCLIEN
  8.              samples).
  9.              Compilation of this file using the MIDL.EXE compiler
  10.              generates additional source files MICARS.H, MICARS_I.C,
  11.              MICARS_P.C, and DLLDATA.C.  They are in turn compiled in the
  12.              Makefile to produce the marshaling server which is used by
  13.              later code samples to provide standard marshaling for the
  14.              ICar, IUtility, and ICruise custom interfaces.
  15.   Origin:    6-9-97: atrent - Revised for MARSHAL and MARSHAL2.
  16. ----------------------------------------------------------------------------
  17.   This file is part of the Microsoft COM Tutorial Code Samples.
  18.   Copyright (C) Microsoft Corporation, 1997.  All rights reserved.
  19.   This source code is intended only as a supplement to Microsoft
  20.   Development Tools and/or on-line documentation.  See these other
  21.   materials for detailed information regarding Microsoft code samples.
  22.   THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  23.   KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  24.   IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  25.   PARTICULAR PURPOSE.
  26. ==========================================================================+*/
  27. [uuid(0002da00-0000-0000-c000-000000000046),
  28.     object
  29. ]
  30. interface ICar : IUnknown
  31. {
  32.   import "unknwn.idl";
  33.   HRESULT Shift([in] short nGear);
  34.   HRESULT Clutch([in] short nEngaged);
  35.   HRESULT Speed([in] short nMph);
  36.   HRESULT Steer([in] short nAngle);
  37. }
  38. [uuid(0002da01-0000-0000-c000-000000000046),
  39.     object
  40. ]
  41. interface IUtility : IUnknown
  42. {
  43.   import "unknwn.idl";
  44.   HRESULT Offroad([in] short nGear);
  45.   HRESULT Winch([in] short nRpm);
  46. }
  47. [uuid(0002da02-0000-0000-c000-000000000046),
  48.     object
  49. ]
  50. interface ICruise : IUnknown
  51. {
  52.   import "unknwn.idl";
  53.   HRESULT Engage([in] BOOL bOnOff);
  54.   HRESULT Adjust([in] BOOL bUpDown);
  55. }