** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Conexion Internet 32bits y 64bits
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoConexion Internet 32bits y 64bits

 Responder Responder
Autor
Mensaje
javier.mil Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 10/Agosto/2005
Localización: España
Estado: Sin conexión
Puntos: 4830
Enlace directo a este mensaje Tema: Conexion Internet 32bits y 64bits
    Enviado: 24/Septiembre/2020 a las 22:25
Buenas , tengo el siguiente código que me funciona en Access de 32 bits que sirve para comprobar si hay conexión de Internet en la red,......... el tema es que con Access de 64 bits da error ,.......... Cry


Codigo para 32 Bits
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long

Public Function funConexionInternet() As Boolean
    On Error GoTo Err_Local

    Const cUrl = "https://www.google.com/"


    funConexionInternet = InternetCheckConnection(cUrl, &H1, 0&)

    If funConexionInternet = False Then
        funConexionInternet = False
    Else
        funConexionInternet = True
    End If


Exit_Local:
    On Error GoTo 0
    Exit Function

Err_Local:
    MsgBox Err.Description, vbCritical, Err.Number
    Resume Exit_Local
End Function


Alguien podría comprobar si con este cambio seria suficiente ,...... (No dispongo de Access 64 bits para comprobarlo)


Codigo para 32Bits y 64Bits
#If VBA7 And Win64 Then
    ' 64-bits
    Private Declare PtrSafe Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
#Else
    ' 32-bits
    Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
#End If



Public Function funConexionInternet() As Boolean
.... Idem codigo
.... Idem codigo

End Function

Gracias

 

Arriba
emiliove Ver desplegable
Administrador
Administrador


Unido: 16/Junio/2009
Localización: Mexico
Estado: en línea
Puntos: 5694
Enlace directo a este mensaje Enviado: 25/Septiembre/2020 a las 00:23
hola Javier

Si funciona bien en 64 bit.

Yo lo uso así:

Private Declare PtrSafe Function InternetGetConnectedState _
   Lib "wininet.dll" (ByRef dwFlags As Long, _
   ByVal dwReserved As Long) As Long
Private Const INTERNET_CONNECTION_MODEM As Long = &H1
Private Const INTERNET_CONNECTION_LAN As Long = &H2
Private Const INTERNET_CONNECTION_PROXY As Long = &H4
Private Const INTERNET_CONNECTION_OFFLINE As Long = &H20
Function IsInternetConnected() As Boolean
    Dim L As Long
    Dim R As Long
    R = InternetGetConnectedState(L, 0&)
    If R = 0 Then
        IsInternetConnected = False
    Else
        If R <= 4 Then
            IsInternetConnected = True
        Else
            IsInternetConnected = False
        End If
    End If
End Function

Saludos.



Arriba
javier.mil Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 10/Agosto/2005
Localización: España
Estado: Sin conexión
Puntos: 4830
Enlace directo a este mensaje Enviado: 25/Septiembre/2020 a las 08:53
Ok Gracias Emilio !
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable