NumServ.pas
上传用户:fh681027
上传日期:2022-07-23
资源大小:1959k
文件大小:1k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit NumServ;
  2. interface
  3. uses
  4.   Windows, ActiveX, ComObj, NumIntf;
  5. type
  6.   TNumServer = class(TComObject, INumberProp)
  7.   private
  8.     fValue: Integer;
  9.   public
  10.     function GetValue: Integer; virtual; stdcall;
  11.     procedure SetValue (New: Integer); virtual; stdcall;
  12.     procedure Increase; virtual; stdcall;
  13.     procedure Initialize; override;
  14.     destructor Destroy; override;
  15.   end;
  16. const
  17.   Class_NumPropServer: TGUID =
  18.     '{B165F7A1-DDF9-11D1-B9F1-004845400FAA}';
  19. implementation
  20. uses ComServ;
  21. { TNumServer }
  22. destructor TNumServer.Destroy;
  23. begin
  24.   inherited;
  25.   MessageBox (0, 'Object Destroyed',
  26.     'TDLLNumber', mb_OK); // API call
  27. end;
  28. function TNumServer.GetValue: Integer;
  29. begin
  30.   Result := fValue;
  31. end;
  32. procedure TNumServer.Increase;
  33. begin
  34.   Inc (fValue);
  35. end;
  36. procedure TNumServer.Initialize;
  37. begin
  38.   inherited;
  39.   fValue := 10;
  40. end;
  41. procedure TNumServer.SetValue(New: Integer);
  42. begin
  43.   fValue := New;
  44. end;
  45. initialization
  46.   TComObjectFactory.Create(ComServer, TNumServer, Class_NumPropServer,
  47.     'NumPropServer', 'Num Prop Server (Prop Com)', ciMultiInstance, tmSingle);
  48. end.