
01/10/2008, 03:57
|
| | Fecha de Ingreso: abril-2006
Mensajes: 173
Antigüedad: 19 años Puntos: 0 | |
Comprobar conexion a internet Hola, estoy intentando comprobar en mi aplicación VB si la conexión a internet está operativa. Hasta ahora he encontrado una función por la red que funciona bien, pero el único problema que tiene es que si no hay conexión se queda colgada la aplicación comprobando el estado de la conexión, y hasta que no vuelve internet la aplicación no vuelve a tomar el control. Necesito una especie de timeout o algo parecido para que la aplicacion no se cuelgue mientras no haya internet.
Os pongo el código de la función que he encontrado:
Option Explicit
Dim Url As String
Private Declare Function InternetCheckConnection Lib _
"wininet.dll" Alias _
"InternetCheckConnectionA" ( _
ByVal lpszUrl As String, _
ByVal dwFlags As Long, _
ByVal dwReserved As Long) As Long
' La función retorna true si se pudo acceder a la dirección indicada
'************************************************* ****************************
Function Comprobar_Conexión(Url As String) As Boolean
frmComprobarConexion.MousePointer = vbHourglass
' Se debe comprobar que la dirección tenga el Http , Ftp etc..
If LCase(Left(Url, 7)) <> "http://" Then
'si no lo tiene lo agrega
Url = "http://" & Url
End If
' Si retorna un 0 es por que no se puede acceder
If InternetCheckConnection(Url, &H1, 0&) = 0 Then
Comprobar_Conexión = False
Else
Comprobar_Conexión = True
End If
frmComprobarConexion.MousePointer = vbNormal
End Function
Private Sub comprobar_Timer()
If Comprobar_Conexión("www.google.com") Then
MsgBox "Se pudo acceder a la Dirección Url :" & vbNewLine & Url, vbInformation
Else
MsgBox "NO se puede acceder a la dirección Url :" & vbNewLine & Url, vbCritical
End If
End Sub
Gracias !!! |