unit DSimpleInfo; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls; type TDlgSimpleInfo = class(TForm) mmInfo: TMemo; btnCopyCB: TButton; btnDump: TButton; SaveDialog: TSaveDialog; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure btnCopyCBClick(Sender: TObject); procedure btnDumpClick(Sender: TObject); private { Private declarations } public { Public declarations } Constructor Create(aOwner: TComponent); override; procedure CreateParams(var Params: TCreateParams); override; // 작업표시줄에 표시 procedure FillCurrentModeInfo; end; var DlgSimpleInfo: TDlgSimpleInfo; implementation uses {$IFDEF EurekaLog} EExceptionManager, EBase, ECore, EMemLeaks, ELogBuilder, {$ENDIF} Tocsg.Safe, Vcl.Clipbrd, ManagerService, DeCrmHeMain, Condition; resourcestring RS_CopyCB = '클립보드에 복사되었습니다.'; RS_EmpNo = '사번 : '; RS_CurMode = '현재 모드 : '; RS_CurPolicy = '현재 정책 : '; RS_PolicyGroup = '정책 그룹 : '; RS_IpInfo = 'IP 정보 : '; RS_HostInfo = '호스트 정보 : '; RS_ConnInfo = '접속 상태 : '; RS_ConnMode = '버전, 접속 모드 : '; {$R *.dfm} Constructor TDlgSimpleInfo.Create(aOwner: TComponent); begin Inherited Create(aOwner); {$IFDEF EurekaLog} btnDump.Enabled := true; btnDump.Visible := true; {$ENDIF} end; procedure TDlgSimpleInfo.btnDumpClick(Sender: TObject); begin {$IFDEF EurekaLog} if SaveDialog.Execute(Handle) then begin var lb: TLogBuilder; Guard(lb, TLogBuilder.Create(nil)); lb.SaveToFile(SaveDialog.FileName); // DumpAllocationsToFile(SaveDialog.FileName); end; {$ENDIF} end; procedure TDlgSimpleInfo.CreateParams(var Params: TCreateParams); begin Inherited CreateParams(Params); Params.ExStyle := WS_EX_APPWINDOW; end; procedure TDlgSimpleInfo.btnCopyCBClick(Sender: TObject); var cbd: TClipboard; begin Guard(cbd, TClipboard.Create); cbd.AsText := mmInfo.Text; MessageBox(Handle, PChar(RS_CopyCB), PChar(Caption), MB_ICONINFORMATION or MB_OK); end; procedure TDlgSimpleInfo.FillCurrentModeInfo; begin mmInfo.Clear; mmInfo.Lines.Add('AgentId : ' + gMgSvc.AgentId); mmInfo.Lines.Add(''); mmInfo.Lines.Add(RS_EmpNo + gMgSvc.EmpNo); mmInfo.Lines.Add(RS_CurMode + gMain.lbMode.Caption); mmInfo.Lines.Add(RS_IpInfo + gMain.lbIpInfo.Caption); mmInfo.Lines.Add(RS_HostInfo + gMain.lbWinAccount.Caption); mmInfo.Lines.Add(''); // mmInfo.Lines.Add(RS_PolicyGroup + gMgSvc.PrefModel.PolicyGroup); // mmInfo.Lines.Add(RS_CurPolicy + gMgSvc.ModePolicy.PolicyName); // mmInfo.Lines.Add(''); mmInfo.Lines.Add(RS_ConnInfo + gMain.lbConn.Caption); mmInfo.Lines.Add(RS_ConnMode + gMain.lbVer.Caption); mmInfo.Lines.Add(''); // var sMsg: String := 'Name : ' + MgSvc_.UName + #13#10 + // 'Dept : ' + MgSvc_.DeptName + #13#10 + // 'Email : ' + MgSvc_.Email; mmInfo.Lines.Add('Name : ' + gMgSvc.UName); mmInfo.Lines.Add('Dept : ' + gMgSvc.DeptName); if IsCJ_Affiliates and (IsSupportAIP or IsUseEncOnlyAIP) then mmInfo.Lines.Add('AIP : ' + gMgSvc.GetAipUPN); // case CUSTOMER_TYPE of // CUSTOMER_GEC, // CUSTOMER_HDENG : mmInfo.Lines.Add('Email : ' + gMgSvc.Email); // end; if gMgSvc.Email <> '' then mmInfo.Lines.Add('Email : ' + gMgSvc.Email); end; procedure TDlgSimpleInfo.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; end.