Vb.net 检测是否连接了Internet

Vb.net 检测是否连接了Internet,vb.net,Vb.net,我如何通过我的应用程序检查计算机是否连接到互联网(目前) 如果网络已连接,我需要一条消息 非常感谢 福坎我想试试。 它来自VB6,但我认为您可以轻松地转换它 Private Declare Function InternetGetConnectedState Lib "wininet.dll" (ByRef dwflags As Long, ByVal dwReserved As Long) As Long Public Function IsOnline() As Boolean Dim L

我如何通过我的应用程序检查计算机是否连接到互联网(目前) 如果网络已连接,我需要一条消息

非常感谢 福坎

我想试试。 它来自VB6,但我认为您可以轻松地转换它

Private Declare Function InternetGetConnectedState Lib "wininet.dll" (ByRef
dwflags As Long, ByVal dwReserved As Long) As Long

Public Function IsOnline() As Boolean
Dim LFlags As Long
IsOnline = InternetGetConnectedState(LFlags, 0&)
End Function
平。 Dim响应为布尔值=False response=My.Computer.Network.ping(google.com)


是的,你有访问权限;是的,你没有访问权限;是的,你没有访问权限;否则,世界末日就要到来了,因为谷歌离线了。

互联网连接的处理方式应该与文件可用性类似

对于文件,通常不应使用File.Exists()首先查看是否可以打开文件,因为在执行检查和对结果执行操作之间,结果可能会发生变化,更不用说仅仅存在权限和读取权限之间的差异了。无论如何,您必须处理异常,因此这确实是一个更好的集中精力的地方

互联网接入也是如此。最好的选择通常是直接去做,并将开发时间集中在异常处理程序上

使用以下代码:

If My.Computer.Network.IsAvailable Then
    MsgBox("Computer is connected.")
Else
    MsgBox("Computer is not connected.")
End If

请参阅。

或谷歌已关闭ICMP回复以响应Ping洪水攻击。如果互联网已连接,您下一步将做什么?一旦我们知道下一步的答案,我们就可以提供最好的答案。如果发现互联网已连接,我会启动应用程序发送电子邮件。看起来好多了。反正是这个主意。这肯定是最好的答案。如果谷歌死了怎么办。我不喜欢被接受的答案。我没有检查,但我认为ping可能也会消耗更多的性能。我遇到的问题是,虚拟适配器可能会出现误报,即,它似乎检测到我的VMware虚拟适配器&认为我的电脑即使在我从任何网络拔出时也可以访问网络。