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

Delphi控件源码

开发平台:

Delphi

  1. unit MonForm;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   IBSQLMonitor, StdCtrls, ComCtrls, ExtCtrls, IBServices, ToolWin;
  6. type
  7.   TForm1 = class(TForm)
  8.     IBSQLMonitor1: TIBSQLMonitor;
  9.     PageControl1: TPageControl;
  10.     TabSheet1: TTabSheet;
  11.     TabSheet2: TTabSheet;
  12.     TabSheet3: TTabSheet;
  13.     TabSheet4: TTabSheet;
  14.     RichEdit1: TRichEdit;
  15.     IBStatisticalService1: TIBStatisticalService;
  16.     IBServerProperties1: TIBServerProperties;
  17.     RichEdit2: TRichEdit;
  18.     ToolBar1: TToolBar;
  19.     ToolButton1: TToolButton;
  20.     ToolBar2: TToolBar;
  21.     ToolButton2: TToolButton;
  22.     RichEdit3: TRichEdit;
  23.     RichEdit4: TRichEdit;
  24.     ToolBar3: TToolBar;
  25.     ToolButton3: TToolButton;
  26.     IBSecurityService1: TIBSecurityService;
  27.     procedure IBSQLMonitor1SQL(EventText: String; EventTime: TDateTime);
  28.     procedure ToolButton1Click(Sender: TObject);
  29.     procedure ToolButton2Click(Sender: TObject);
  30.     procedure ToolButton3Click(Sender: TObject);
  31.   private
  32.     { Private declarations }
  33.   public
  34.     { Public declarations }
  35.   end;
  36. var
  37.   Form1: TForm1;
  38. implementation
  39. {$R *.DFM}
  40. procedure TForm1.IBSQLMonitor1SQL(EventText: String;
  41.   EventTime: TDateTime);
  42. begin
  43.   if Assigned (RichEdit1) then
  44.     RichEdit1.Lines.Add (TimeToStr (EventTime) + ': ' + EventText);
  45. end;
  46. procedure TForm1.ToolButton1Click(Sender: TObject);
  47. begin
  48.   RichEdit2.Clear;
  49.   RichEdit2.Lines.Add ('Statistical Service -- ' + TimeToStr (Now));
  50.   IBStatisticalService1.ServiceStart;
  51.   while not IBStatisticalService1.EOF do
  52.     RichEdit2.Lines.Add (IBStatisticalService1.GetNextChunk);
  53. end;
  54. procedure TForm1.ToolButton2Click(Sender: TObject);
  55. var
  56.   i, n: Integer;
  57. begin
  58.   RichEdit3.Clear;
  59.   RichEdit3.Lines.Add ('Server Properties -- ' + TimeToStr (Now));
  60.   RichEdit3.Lines.Add ('');
  61.   IBServerProperties1.FetchDatabaseInfo;
  62.   n := IBServerProperties1.DatabaseInfo.NoOfDatabases;
  63.   RichEdit3.Lines.Add ('Databases: ' + IntToStr (n));
  64.   for i := 0 to n-1 do
  65.     RichEdit3.Lines.Add ('- ' + IBServerProperties1.DatabaseInfo.DbName[i]);
  66.   RichEdit3.Lines.Add ('');
  67.   IBServerProperties1.FetchConfigParams;
  68.   RichEdit3.Lines.Add ('Base Location: ' +
  69.     IBServerProperties1.ConfigParams.BaseLocation);
  70.   RichEdit3.Lines.Add ('');
  71.   IBServerProperties1.FetchVersionInfo;
  72.   with IBServerProperties1.VersionInfo do
  73.   begin
  74.     RichEdit3.Lines.Add ('Version: ' + ServerVersion);
  75.     RichEdit3.Lines.Add ('Implementation: ' + ServerImplementation);
  76.     RichEdit3.Lines.Add ('Service Version: ' + IntToStr (ServiceVersion));
  77.   end;
  78. end;
  79. procedure TForm1.ToolButton3Click(Sender: TObject);
  80. var
  81.   i: Integer;
  82. begin
  83.   RichEdit4.Clear;
  84.   // grab the users data
  85.   IBSecurityService1.DisplayUsers;
  86.   // display the name of each user
  87.   for i := 0 to IBSecurityService1.UserInfoCount - 1 do
  88.     with IBSecurityService1.UserInfo[i] do
  89.       RichEdit4.Lines.Add (Format (
  90.         'User: %s, Full Name: %s, Id: %d',
  91.         [UserName, FirstName + ' ' + LastName, UserId]));
  92. end;
  93. end.