?? syslogserverenterprise.pas
字號(hào):
unit SysLogServerEnterprise;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdUDPBase, IdUDPServer,
IdSysLogServer, ComCtrls,IdSocketHandle,IdSysLogMessage,
Grids, DBGrids,syslogunit;
type
TSysLogFrm = class(TForm)
SysLogServer: TIdSyslogServer;
quit_btn: TButton;
start_btn: TButton;
stop_btn: TButton;
StatusBar1: TStatusBar;
setup_btn: TButton;
MsgView_memo: TMemo;
clearview_btn: TButton;
procedure quit_btnClick(Sender: TObject);
procedure start_btnClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure SysLogServerSyslog(Sender: TObject;
ASysLogMessage: TIdSysLogMessage; ABinding: TIdSocketHandle);
procedure FormDestroy(Sender: TObject);
procedure FormResize(Sender: TObject);
procedure clearview_btnClick(Sender: TObject);
private
{ Private declarations }
SysDatabaseLoger :TSysLog;
public
{ Public declarations }
end;
var
SysLogFrm: TSysLogFrm;
implementation
{$R *.dfm}
procedure TSysLogFrm.quit_btnClick(Sender: TObject);
begin
close ;
end;
procedure TSysLogFrm.start_btnClick(Sender: TObject);
begin
//啟動(dòng)服務(wù)器
end;
procedure TSysLogFrm.FormCreate(Sender: TObject);
begin
//創(chuàng)建 日志服務(wù)器的對(duì)象
SysDatabaseLoger := TSysLog.create;
SysLogServer := TIdSyslogServer.Create(nil);
end;
procedure TSysLogFrm.SysLogServerSyslog(Sender: TObject;
ASysLogMessage: TIdSysLogMessage; ABinding: TIdSocketHandle);
var
ttIp :string ;
ttHostname : string ;
ttNamepath : string ;
ttText : string ;
begin
//禁用退出按鍵,防止意外發(fā)生
quit_btn.Enabled := false ;
//取得消息的詳細(xì)信息
ttIP := ABinding.IP;
ttHostName := ASysLogMessage.Hostname ;
ttNamepath := ASysLogMessage.msg.GetNamePath;
ttText := ASysLogMessage.Msg.Text ;
//對(duì)StringGrid添加數(shù)據(jù)方便查看
try
SysDatabaseLoger.InsertRec(ttIP,ttHostName,ttNamepath,ttText);
except
application.MessageBox('error while writing database .','error',MB_OK);
end;
MsgView_memo.Lines.Add(
intTostr(MsgView_memo.Lines.Count)
+' '+DatetimeToStr(now)
+' '+ttIP
+' '+ttHostName
+' '+ttNamepath
+' '+ttText);
if MsgView_memo.Lines.Count >=10 then
MsgView_memo.Lines.Clear;
//啟用退出按鍵,防止意外發(fā)生
quit_btn.Enabled := true ;
end;
procedure TSysLogFrm.FormDestroy(Sender: TObject);
begin
SysDatabaseLoger.Free;
SysLogServer.Free;
end;
procedure TSysLogFrm.FormResize(Sender: TObject);
begin
MsgView_memo.Width := self.ClientWidth-15 ;
MsgView_memo.Height := self.ClientHeight-70 ;
end;
procedure TSysLogFrm.clearview_btnClick(Sender: TObject);
begin
MsgView_Memo.Lines.Clear;
end;
end.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -