Newsgroup: it.comp.appl.access
Titolo: Controllo connessione a internet.

Domandina spero semplice semplice...
come posso da access controllare se esiste una connessione ad internet,
magari con un ping o simili...
Grazie a tutti per l'aiuto.

 ha scritto nel messaggio 
news:4373b77e$0$8485$5fc...@news.tiscali.it...

Forse c'è qualcosa di più semplice ma io uso questo in un nuovo modulo 
pubblico e per verificare la connessione remota:
Option Compare Database
Option Explicit
Public Const ERROR_SUCCESS = 0&
Public Const APINULL = 0&
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public ReturnCode As Long
Declare Function RegCloseKey Lib "advapi32.dll" (ByVal _
hKey As Long) As Long
Declare Function RegOpenKey Lib "advapi32.dll" Alias _
"RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As _
String, phkResult As Long) As Long
Declare Function RegQueryValueEx Lib "advapi32.dll" Alias _
"RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName _
As String, ByVal lpReserved As Long, lpType As Long, _
lpData As Any, lpcbData As Long) As Long
Public Function ActiveConnection() As Boolean
On Error Resume Next
  Dim hKey As Long
  Dim lpSubKey As String
  Dim phkResult As Long
  Dim lpValueName As String
  Dim lpReserved As Long
  Dim lpType As Long
  Dim lpData As Long
  Dim lpcbData As Long
  ActiveConnection = False
  lpSubKey = "System\CurrentControlSet\Services\RemoteAccess"
  ReturnCode = RegOpenKey(HKEY_LOCAL_MACHINE, lpSubKey, _
  phkResult)
  If ReturnCode = ERROR_SUCCESS Then
         hKey = phkResult
    lpValueName = "Remote Connection"
    lpReserved = APINULL
    lpType = APINULL
    lpData = APINULL
    lpcbData = APINULL
    ReturnCode = RegQueryValueEx(hKey, lpValueName, _
    lpReserved, lpType, ByVal lpData, lpcbData)
    lpcbData = Len(lpData)
    ReturnCode = RegQueryValueEx(hKey, lpValueName, _
    lpReserved, lpType, lpData, lpcbData)
  If ReturnCode = ERROR_SUCCESS Then
  If lpData = 0 Then
    ActiveConnection = False
  Else
    ActiveConnection = True
  End If
  End If
    RegCloseKey (hKey)
  End If
End Function
'Usa la funzione ActiveConnection come nell'esempio:
'If ActiveConnection = True Then
'MsgBox "Hai una connessione attiva.", vbInformation
'Else
'MsgBox "Non hai una connessione attiva.", vbInformation
'End If
'Funziona bene se la connessione è con il modem
Ciao, Carlo 

 ha scritto nel messaggio 
news:4374534d$0$27609$4faf...@reader1.news.tin.it...

Mi permetto di consigliarti anche una soluzione alternativa rispetto a 
quella di Carlo
Option Compare Database
Option Explicit
Private Const FLAG_ICC_FORCE_CONNECTION = &H1
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 CheckConnessione(strURL As String) As Boolean
'
http://www.mentalis.org/apilist/InternetCheckConnection.shtml
    If InternetCheckConnection(strURL, FLAG_ICC_FORCE_CONNECTION, 0&) = 0 
Then
        CheckConnessione = False
    Else
        CheckConnessione = True
    End If
End Function
da usare in un modulo, gli passi un url qualsiasi da testare e ti ritorna 
l'esito. Mi ci sono trovato bene sia con modem che con connessioni via 
router.
Ciao Carlo (un altro)