netmonitorform.~pas
来自「自已写的IP扫描工具」· ~PAS 代码 · 共 210 行
~PAS
210 行
unit NetMonitorForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, ComCtrls, StdCtrls, CheckLst, ExtCtrls, clsGlobal,
clsQuery, shellapi, Winsock, NMSMTP, IdBaseComponent, IdComponent, clsDtSet,
clsDataSource, IdIPWatch, AppEvnts, dateutils, ComObj, ADODB, IdRawBase,
IdRawClient, IdIcmpClient, dxCntner, dxEditor, dxExEdtr, dxEdLib, MPlayer,
mmsystem, WinSkinData, Buttons, Menus, OleCtrls, AgentObjects_TLB,
ImgList;
const
MI_ICONEVENT = WM_USER + 1;
ICON_ID = 1;
type
TNetMonitorFrm = class(TForm)
PageControl1: TPageControl;
TabSheetMain: TTabSheet;
Panel1: TPanel;
Panel7: TPanel;
labInIP: TLabel;
labInIPPosition: TLabel;
edtInIP: TEdit;
edtPosition: TEdit;
btnInIPAdd: TButton;
btnInIPDelete: TButton;
gsSurePing: TRadioGroup;
rdoPingYes: TRadioButton;
rdoPingNo: TRadioButton;
Panel8: TPanel;
labIPServer: TLabel;
labRunNum: TLabel;
btnPingRuning: TButton;
btnPingStop: TButton;
Panel2: TPanel;
TabSheetSetMail: TTabSheet;
Panel9: TPanel;
Panel10: TPanel;
Panel11: TPanel;
TabSheet3: TTabSheet;
Panel12: TPanel;
Panel13: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
btnQuery: TButton;
btnQueryCancel: TButton;
EndDateTime: TDateTimePicker;
cboIPLocalLst: TComboBox;
cboIPServerLst: TComboBox;
Panel14: TPanel;
DBGridFailData: TDBGrid;
RunPing: TTimer;
BeginDateTime: TDateTimePicker;
IdIPWatch: TIdIPWatch;
labLocalIP: TLabel;
edtRunInterval: TEdit;
ApplicationEvents1: TApplicationEvents;
btnDBGridDelete: TButton;
edtDelay: TEdit;
labDelay: TLabel;
labms: TLabel;
IdIcmpClient1: TIdIcmpClient;
dxTimeEditStart: TdxTimeEdit;
dxTimeEditEnd: TdxTimeEdit;
GboxMailList: TGroupBox;
chklstMail: TCheckListBox;
Panel15: TPanel;
btnMailChooseAll: TButton;
btnMailChooseCancel: TButton;
btnMailSaveState: TButton;
Panel20: TPanel;
GboxSetMail: TGroupBox;
labUserName: TLabel;
edtDepartment: TEdit;
edtUserName: TEdit;
labDepartment: TLabel;
labUserID: TLabel;
edtUserID: TEdit;
cboMailType: TComboBox;
labAT: TLabel;
rdogSureSendMail: TRadioGroup;
rdoSendMailYes: TRadioButton;
rdoSendMailNo: TRadioButton;
btnMailAdd: TButton;
btnMailDelete: TButton;
GroupBox2: TGroupBox;
edtHostMail: TEdit;
labHostMail: TLabel;
Label5: TLabel;
cboHostMailType: TComboBox;
GroupBox3: TGroupBox;
mmoMailBody: TMemo;
OpDlgChooseSound: TOpenDialog;
Panel3: TPanel;
Panel5: TPanel;
btnInIPChooseAll: TButton;
btnInIPChooseCancel: TButton;
btnInIPSaveState: TButton;
gsInIPList: TGroupBox;
chklstInIPLocal: TCheckListBox;
btnExport: TButton;
tmrAlarm: TTimer;
pnl3: TPanel;
Shape: TShape;
lblshowmessage: TLabel;
tmrIsAlarm: TTimer;
btn1: TSpeedButton;
PopupMenu1: TPopupMenu;
mniN1: TMenuItem;
mniN2: TMenuItem;
Panel4: TPanel;
grpPingDataDesc: TGroupBox;
grp1: TGroupBox;
lstPingFail: TListBox;
MediaPlayer: TMediaPlayer;
grpPingOK: TGroupBox;
lstPingDataDesc: TListBox;
lstIp: TListBox;
btnChoose: TButton;
btnClearMemo: TButton;
lbl1: TLabel;
skndt1: TSkinData;
agnt1: TAgent;
N2: TMenuItem;
ts1: TTabSheet;
lvSendMegHost: TListView;
ImageList1: TImageList;
btn2: TBitBtn;
btn3: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure btnInIPAddClick(Sender: TObject);
procedure btnPingRuningClick(Sender: TObject);
procedure btnPingStopClick(Sender: TObject);
procedure btnInIPChooseAllClick(Sender: TObject);
procedure btnPingDataClearClick(Sender: TObject);
procedure btnInIPSaveStateClick(Sender: TObject);
procedure btnInIPChooseCancelClick(Sender: TObject);
procedure btnInIPDeleteClick(Sender: TObject);
procedure RunPingTimer(Sender: TObject);
procedure btnMailAddClick(Sender: TObject);
procedure btnMailDeleteClick(Sender: TObject);
procedure btnMailChooseAllClick(Sender: TObject);
procedure btnMailChooseCancelClick(Sender: TObject);
procedure btnMailSaveStateClick(Sender: TObject);
procedure btnQueryClick(Sender: TObject);
procedure btnQueryCancelClick(Sender: TObject);
procedure ApplicationEvents1Exception(Sender: TObject; E: Exception);
procedure btnExportClick(Sender: TObject);
procedure btnDBGridDeleteClick(Sender: TObject);
procedure IdIcmpClient1Reply(ASender: TComponent;
const AReplyStatus: TReplyStatus);
procedure edtDelayKeyPress(Sender: TObject; var Key: Char);
procedure edtRunIntervalKeyPress(Sender: TObject; var Key: Char);
procedure chklstInIPLocalDrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
procedure tmrAlarmTimer(Sender: TObject);
procedure tmrIsAlarmTimer(Sender: TObject);
procedure btn1Click(Sender: TObject);
procedure mniN1Click(Sender: TObject);
procedure mniN2Click(Sender: TObject);
procedure btnChooseClick(Sender: TObject);
procedure btnClearMemoClick(Sender: TObject);
// procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure agnt1Click(Sender: TObject; const CharacterID: WideString;
Button, Shift, x, y: Smallint);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
procedure btn3Click(Sender: TObject);
private
{ Private declarations }
objQuery: TQuery;
FPingFailData: TDtSet;
FPingFailSource: TDtSource;
FieldIP, IPItems: string;
Running, IsHide, IsStop: boolean;
FieldCount: Integer;
hicondo: TNOTIFYICONDATA;
procedure ClearTabSheetMailData;
procedure ClearTabSheetMainData;
procedure ChangeRunSectionState;
procedure ChangeStopSectionState;
procedure FillListMailItems;
procedure FillListIPLocalItems;
procedure GetFailData;
procedure SendWarningMail(StrIP, AStrTime: string);
procedure GetcboIPLocalLst;
procedure GetcboIPServerLst;
procedure SendMsgToHost(strIp,AStrTime:string);
// procedure FillDBGridFaildata;
function CheckIP(AstrIP: string): Boolean;
procedure DBGridFailDataMutiLang(ADBGrid: TDBGrid);
procedure SetDBGridAlign(ADBGrid: TDBGrid);
procedure WarningSound;
procedure MerlinEexcute;
public
{ Public declarations }
objSendHost: TQuery;
Merlin: IagentCtlCharacter;
Request1: IagentCtlRequest;
procedure IconOnClick(var message: Tmessage); message MI_ICONEVENT;
end;
resourcestring
rsNetMonitorFrmInputDepartment = '叫块
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?