我正在編寫一個應用程序,該應用程序將用於定期上/下網絡連接的移動環境中。如何檢查特定網絡是否可用?檢查網絡可用性VB.net
3
A
回答
5
嘗試NetworkInterface.GetIsNetworkAvailable
:
表示任何網絡連接是否可用。
如果任何網絡接口標記爲「up」且不是迴環或通道接口,則認爲網絡連接可用。
3
,看是否有網絡可用時,你可以使用VB.NET My命名空間:
My.Computer.Network.IsAvailable
,我猜是安德魯的回答NetworkInterface
屬性的抽象。要查看是否可以使用可用的網絡訪問特定服務器,可以使用
My.Computer.Network.Ping(host name or IP address, or a System.Uri)
0
我喜歡挖掘舊線程!我的解決方案是使用DNS進行測試。通過這種方式,您可以測試xxx網絡中的特定名稱,以確定您是否在內部/外部。嵌套的try語句顯示了這個概念。
Imports System.Net
Module Networker
Dim Online_Status As Boolean = vbFalse
Dim InsideJoeNetwork As Boolean = vbFalse
Dim CurrentJoeIPAddress As New IPHostEntry
Public ReadOnly Property GetOnlineStatus() As String
Get
Return Online_Status
End Get
End Property
Public ReadOnly Property InsideJoeNet() As String
Get
Return InsideJoeNetwork
End Get
End Property
Sub Initialize()
Set_Online_Status()
End Sub
Public Sub Set_Online_Status()
If My.Computer.Network.IsAvailable Then
Try
Dim DNSTest As IPHostEntry = Dns.GetHostEntry("google.com")
If DNSTest.AddressList.Length > 0 Then
Online_Status = True
Detect_Joe_Network()
Else : Online_Status = False
End If
Catch ex As System.Net.Sockets.SocketException
Online_Status = False
End Try
End If
End Sub
Public Sub Detect_Joe_Network()
If Online_Status = True Then
Dim JoeIP As IPHostEntry = New IPHostEntry()
Try
JoeIP = Dns.GetHostEntry("laptop")
If JoeIP.AddressList.Length > 0 Then
InsideJoeNetwork = True
CurrentJoeIPAddress = JoeIP
'MessageBox.Show(JoeIP.HostName.ToString(), "JoeIP", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Catch ex As Sockets.SocketException
Try
JoeIP = Dns.GetHostEntry("laptop.exampledomain.com")
If JoeIP.AddressList.Length > 0 Then
InsideJoeNetwork = False
CurrentJoeIPAddress = JoeIP
' MessageBox.Show(JoeIP.HostName.ToString(), "JoeIP", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Catch ey As Sockets.SocketException
End Try
End Try
End If
End Sub
End Module
相關問題
- 1. 檢查網絡可用性
- 2. 如何檢查網絡可用性?
- 3. 如何檢查網絡可達性
- 4. 如何檢查網絡可用性或檢查網絡並打開移動網絡?
- 5. 檢查網絡可在android
- 6. 如何檢查社交網絡中用戶名的可用性?
- 7. 檢查網絡連接是否可用
- 8. windows mobile:檢查網絡是否可用
- 9. 在iOS 7中檢查iPhone SDK的網絡可用性
- 10. 安卓和ksoap,檢查網絡服務可用性
- 11. 如何檢查Honeycomb上的網絡可用性?
- 12. 如何在動作腳本中檢查網絡可用性?
- 13. 如何在撥打電話前檢查網絡可用性?
- 14. windows phone 8如何檢查網絡可用性
- 15. 如何檢查網絡和Wi-Fi可用性
- 16. 檢查網絡鏈接的有效性
- 17. 網絡檢查android
- 18. Android網絡檢查不可靠
- 19. 如何檢查iOS中的網絡可達性
- 20. 檢查網盤的可用性在Mac
- 21. vb.net如何檢查網絡驅動器是否持久映射
- 22. 使用網絡瀏覽器的準確名稱可用性檢查器C#
- 23. 在VB.Net中查找網絡域
- 24. 用於檢測新網絡可用性的廣播回覆器
- 25. 使用VB.NET檢查電子郵件的可用性WebMethod + JSON + CustomValidator
- 26. Python - 檢查網絡圖
- 27. Chrome網絡檢查員
- 28. 檢查網絡連接
- 29. Android檢查網絡認證
- 30. 後臺網絡檢查
有沒有更快的方法來做到這一點?這個特定的調用相對較慢,並導致我正在處理的移動應用程序出現性能問題。 (我將它設計成在每次交互之前運行 - 所以它運行了很多)我的設備有兩個網絡設備 - 如果我能找到一種方法來檢查我關心的一個適配器,至少在理論上它將是50%更快。任何人都知道如何做到這一點? – Jeff 2013-02-15 15:12:59