📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls,filectrl, ExtCtrls;
type
TfrmMain = class(TForm)
GroupBox1: TGroupBox;
RadioGroup1: TRadioGroup;
GroupBox2: TGroupBox;
StaticText2: TStaticText;
StaticText3: TStaticText;
edtHostName: TEdit;
edtIP: TEdit;
GroupBox3: TGroupBox;
memResult: TMemo;
GroupBox4: TGroupBox;
btnRun: TButton;
btnExit: TButton;
procedure btnRunClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnExitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmMain: TfrmMain;
implementation
var
temp:string;
{$R *.DFM}
procedure TfrmMain.FormCreate(Sender: TObject);
begin
memResult.lines.Clear;
temp:='c:\nbtstat.txt';
end;
procedure TfrmMain.btnRunClick(Sender: TObject);
var
command:string;
begin
memResult.Lines.Clear ;
if fileexists(temp) then
deletefile(temp);
//每次查询前将前次结果清除,上面三个清空或删除语句保证了多次查询时每次得到的都是最新查询的结果。
case radiogroup1.ItemIndex of
0: command:='command.com /C nbtstat '+'-a '+edtHostName.text+' > '+temp;
1: command:='command.com /C nbtstat '+'-A '+edtIP.text+' > '+temp;
2: command:='command.com /C nbtstat '+'-n > '+temp;
end;
winexec(pchar(command),sw_hide);
while not fileexists(temp) do
sleep(3000);
//为了临时文件的建立等待3秒种,根据网络速度,可以适当增加此值
try
memResult.lines.loadfromfile(temp);
except
//此处不写任何代码,即关闭任何异常。
end;
end;
procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if fileexists(temp) then
deletefile(temp);
//程序退出时删掉临时文件
end;
procedure TfrmMain.btnExitClick(Sender: TObject);
begin
frmMain.Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -