全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3381
推到 Plurk!
推到 Facebook!

關於TIdIcmpClient.Ping方法的問題....

答題得分者是:chris_shieh
ESCAPE
一般會員


發表:37
回覆:47
積分:16
註冊:2005-02-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-13 12:40:44 IP:61.219.xxx.xxx 未訂閱
請問各位有經驗的前輩,我現在使用TIdIcmpClient元件的PING方法,可是我按照之前幾篇關於TIdIcmpClient.PING的使用方式,可是我發現只能Ping區域網路內的電腦IP位址,如果要PING區域網路外的IP(比如168.95.1.1)就不行了。在命令模式下使用PING是正常的。煩請有經驗的前輩不吝指教,謝謝。 我的程式碼如下.... procedure TForm1.Button1Click(Sender: TObject); begin IdIcmpClient1.Host:=Edit1.Text; IdIcmpClient1.Ping; end; procedure TForm1.IdIcmpClient1Reply(ASender: TComponent; const AReplyStatus: TReplyStatus); begin if AReplyStatus.BytesReceived=0 then showmessage('time out') //PING不到 else showmessage(inttostr(AReplyStatus.BytesReceived) ' mSec'); //顯示PINGTIME
chris_shieh
高階會員


發表:46
回覆:308
積分:240
註冊:2004-04-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-13 18:23:45 IP:61.63.xxx.xxx 未訂閱
我也用過TIdIcmpClient 但是沒有發現您的這種問題 我想的到的只有 試著調整IdIcmpClient1.ReceiveTimeout這個參數 debug時建議方式: 1.開著dos視窗持續的ping: ping -t 168.95.1.1 2.執行程式看結果, 直接把訊息output到memo中, 對照dos 執行結果 看看是不是只有某一瞬間不通, 還是一直不通 @瞭解越多.懂得越少@
ESCAPE
一般會員


發表:37
回覆:47
積分:16
註冊:2005-02-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-13 21:35:41 IP:61.219.xxx.xxx 未訂閱
您好,很感謝您的回覆與幫助。 我有想過是否因為防火牆的關係,比如WindowsXP防火牆與防毒軟體防火牆等等。至於IdIcmpClient1.ReceiveTimeout我設定為「60」是否時間太短了?
ESCAPE
一般會員


發表:37
回覆:47
積分:16
註冊:2005-02-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-14 10:16:21 IP:61.219.xxx.xxx 未訂閱
您好,我的問題已經解決了,問題的確是「ReceiveTimeOut」這個屬性的設定問題,很感謝您的幫忙,謝謝您。
系統時間:2024-05-17 11:54:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!