2014-02-25 71 views
1

我必須準備在Delphi上安裝在PC上的小程序(運行WinXP,Win7)在辦公室將發送到MySQL數據庫有關Internet連接的信息。 到目前爲止,它工作正常。但是有些計算機具有多個網絡接口(2個網卡或虛擬卡),並且程序應該檢測是否有連接可用(而不是現在的「一般」)。如何在多個網絡接口上測試Internet連接

如何在這種情況下測試是否有Internet連接?

+0

你打算怎麼處理這些信息?你的數據庫客戶端層允許你選擇一個特定的界面嗎?無論你的問題是什麼,你有可能得到錯誤的解決方案嗎? –

+0

我有解決方案來檢查設備本身的在線狀態。但我需要知道,如果我可以通過接口A連接到互聯網,而接口B只能連接到本地網絡。我不知道什麼時候開始。 它應該如何工作?在PC上運行的Delphi應用程序會檢查在任何接口上是否有Internet連接,並保存它的狀態。 對不起,我可憐的英語,如果我沒有解釋清楚。 – user3350287

+0

我無法理解。你沒有回答我問的問題。 –

回答

0

使用GetAdaptersInfo()GetAdaptersAddresses()列舉可用接口。對於任何給定的接口IP地址,創建一個TCP套接字,bind()它爲IP,connect()它爲Internet上任何已知的好服務器,並檢查結果。根據需要重複每個界面。