Subscribe

RSS Feed (xml)

Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

星期二, 9月 18, 2007

簡單寫本機Port掃描器


首先可能要增加之前的元件
[ components ] --> [ install packages ] --> [ add ] --> choose C:\Program Files\Borlad\BDS\4.0\Bin\dclsockets100.bpl
接著在Internet就會多個TServerSocket。
然後開始設計視窗:
2個Label、2個Edit、1個Button、1個Memo、1個ProgressBar、1個TServerSocket、1個StatusBar
並將TServerSocket的Active屬性變成true。
最後在Button的onClick事件加入下列程式碼:

procedure TForm1.Button1Click(Sender: TObject);
var
a:integer; //a為整數
begin
Button1.Enabled:=false;
StatusBar1.SimpleText:='掃描中…請稍等…';//當按鈕按下時狀態列出現掃瞄中字樣
ProgressBar1.max:=strtoint(Edit2.Text)-strtoint(Edit1.Text);
ProgressBar1.Position:=0;//初始狀態是0
Memo1.Clear; //當按鈕按下時Memo1的內容清空
for a:=strtoint(Edit1.Text) to strtoint(Edit2.Text) do
begin
ProgressBar1.Position:=a-strtoint(Edit1.Text);
ServerSocket1.Close;
ServerSocket1.Port:=a;//Port為整數a
try
ServerSocket1.Open;
except
Memo1.Lines.Add('Port '+inttostr(a)+'是打開的');//當Port出現重複時 Memo1會出現提示end;
StatusBar1.SimpleText:='正在掃描Port'+inttostr(a);//狀態列會出現正在掃描哪個Port
end;
end;
StatusBar1.SimpleText:='掃描完畢';//掃描完之後出現掃描完畢字樣
ProgressBar1.Position:=0;//初始狀態是0
Button1.Enabled:=true;
end;

沒有留言: