http://www.developer.com/net/vb/article.php/3113971/Checking-For-An-Internet-Connection.htm
Checking whether an Internet connection is available isn't always as easy as it sounds. Admittedly, there is a Windows API call that can check whether a connection exists, but it's extremely fragile and returns incorrect results if the machine has never had Internet Explorer configured correctly. Oops. The best method is to actually make a Web request and see whether it works. If it does, you've got your connection. The following neat code snippet does exactly that. Just call IsConnectionAvailable and check the return value: Here's how you might use this function in your application: Karl Moore (MCSD, MVP) is an experience author living in Yorkshire, England. He is author of numerous technology books, including the new Ultimate VB .NET and ASP.NET Code Book (ISBN 1-59059-106-2), plus regularly features at industry conferences and on BBC radio. Moore also runs his own creative consultancy, White Cliff Computing Ltd. Visit his official Web site at www.karlmoore.com. # # #
Checking For An Internet Connection
November 26, 2003
Public Function IsConnectionAvailable() As Boolean
' Returns True if connection is available
' Replace www.yoursite.com with a site that
' is guaranteed to be online - perhaps your
' corporate site, or microsoft.com
Dim objUrl As New System.Uri("http://www.yoursite.com/")
' Setup WebRequest
Dim objWebReq As System.Net.WebRequest
objWebReq = System.Net.WebRequest.Create(objUrl)
Dim objResp As System.Net.WebResponse
Try
' Attempt to get response and return True
objResp = objWebReq.GetResponse
objResp.Close()
objWebReq = Nothing
Return True
Catch ex As Exception
' Error, exit and return False
objResp.Close()
objWebReq = Nothing
Return False
End Try
If IsConnectionAvailable() = True Then
MessageBox.Show("You are online!")
End If
About the Author