在Windows系統中,我們經常用Ping.exe來測試網絡的連通性。 Ping的實現過程很簡單,該命令將引發IP層發送一個簡單的IP包,一般是32字節。而目的方收到這個包後,將源地址和目的地址變換一下,重新發送 這個包即可,當然還要加一些超時機制。 其實,我們也可用C Builder NetMaster中的NMEcho控件來實現網絡連接檢測功能。 首先定義以下控件: 三個Edit控件:一個用於接收遠程主機的IP地址或域名,一個用於接收用戶設置的超時機制的時間,一個用於設置端口號。 兩個RichEdit控件:一個用於給遠程主機發送信息,一個用於接收來自遠程主機的信息。 兩個CheckBox控件:用於用戶是否自己設定端口號。 一個Button控件:用於執行測試。 一個StatusBar控件:用於顯示應用程序的狀態。 程序實現代碼如下: void __fastcall TForm1::Button1Click(TObject Sender) { //設置NMEcho控件的標准TCP/IP屬性 NMEcho1-〉Host=Edit1-〉Text ; NMEcho1-〉TimeOut=StrToInt(Edit2-〉Text) ; if(CheckBox1-〉Checked) NMEcho1-〉Port=StrToInt(Edit3-〉Text); else NMEcho1-〉Port=7; //TCP/IP中Echo的默認端口號 NMEcho1-〉ReportLevel=Status_Basic; NMEcho1-〉Connect(); //建立連接 RichEdit2-〉Clear (); for(int i=0;i //RichEdit1用於給遠程主機發送信息 RichEdit2-〉Text=RichEdit2-〉Text NMEcho1-〉Echo(RichEdit1-〉Lines-〉 Strings[i]); NMEcho1-〉Disconnect (); } 注意:在調用NMEcho控件的Connect()方法時,應該確保在接收數據之前連接已經建立。