程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 制作一個IPhunter

制作一個IPhunter

編輯:Delphi
有人說現在的程序員成了組裝工人,其實很有道理,利用控件模塊+少量代碼就可以實現,Delphi 5.0提供了豐富的internet控件,利用tcp/ip客戶端-服務端就可以解決問題。關鍵的控件是serversocket,我們模仿iphunter的界面用一個button1(按鈕),一個combobox1(用於顯示),這三個最基本的控件放置到空白窗體上就可以開始寫代碼了。

  首先,這個combobox1必須能顯示多個ip,我們定一個變量y來累加combobox1.items[y],
            var y:integer; 
  我們的思路如下,當serversocket活動的port(端口)收到基於tcp/ip協議的連結請求時候,返回對方的ip值,傳遞給combobox顯示出來。由button1控制serversocket的激活,也就是打開關閉端口。

  我們在serversocket的on clIEntconnect事件中加入一下代碼
            procedure tform1.serversocket11clIEntconnect(sender: tobject;
            socket: tcustomwinsocket);
            begin
            combobox1.items.insert(y,'');//加入一條空紀錄
            combobox1.items[y]:=socket.remoteaddress;//獲取對方的ip
            label1.text:='共捕獲'+inttostr(y+1)+'個ip';//用一個標簽來顯示一共抓了多少ip
            y:=y+1;//計數變量加1
            socket.close;
            end;
            現在,將button1的caption屬性設置為 '開始',在它的單擊事件中加入以下代碼
            procedure tform1.speedbutton7click(sender: tobject);
            begin
            if speedbutton7.caption='開始' then
            begin
            serversocket11.port:=80;//這句可以在serversocket屬性中設定,捕獲浏覽器的連接
            serversocket11.active:=true;//激活端口
            speedbutton7.caption:='停止';
            end
            else
            begin
            serversocket11.active:=false;//關閉端口
            speedbutton7.caption:='開始';
            combobox1.clear;//結束捕獲,清空歷史信息
            y:=0;//計數變量復位
            end;
            end;


 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved