vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: HTML/Internet/Netzwerk · Internet / Browser / IE   |   VB-Versionen: VB5, VB623.05.06
Prüfen, ob Verbindung zum Internet besteht

So findet man heraus, ob eine Verbindung zum Internet besteht...

Autor:   Yann LeretailleBewertung:  Views:  18.960 
www.paqua.deSystem:  WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Das ganze ist denkbar einfach. Wir überprüfen ob eine Verbindungsart zur DFÜ-Verbindung vorhanden ist, also ob eine verbindung besteht, mit der man sich per DFÜ verbinden kann. Eine Verbindung gilt als inaktiv,wenn keine Verbindung besteht; so können wir also herausfinden, ob der user 'Online' ist oder nicht. Denn nur über eine 'aktive' Verbindung die 'Online' ist lässt sich die DFÜ herstellen.

Hierzu müssen erst einige Variablen definiert werden (das Beispiel befindet sich in einem Modul):

Option Explicit
 
' Benötigte API-Deklarationen
Public Declare Function InternetGetConnectedState Lib "wininet.dll" ( _
  ByRef lpSFlags As Long, _
  ByVal dwReserved As Long) As Long
 
Const INTERNET_CONNECTION_LAN As Long = &H2
Const INTERNET_CONNECTION_MODEM As Long = &H1
Const INTERNET_CONNECTION_PROXY As Long = &H4
Const INTERNET_CONNECTION_MODEM_BUSY As Long = &H8

Anschließend basteln wir uns noch eine Funktion:

Public Function IfOnline()
  Dim icFlags As Long
 
  ' Verbindungen abfragen
  Call InternetGetConnectedState(icFlags, 0&)
  IfOnline = "Offline"
 
  ' Wenn Verbunden über LAN
  If icFlags And INTERNET_CONNECTION_LAN Then  
    IfOnline = "Online"
  End If
 
  ' Wenn Verbunden Über Modem
  If icFlags And INTERNET_CONNECTION_MODEM Then 
    IfOnline = "Online"
  End If
 
  ' Wenn Verbunden über Proxy
  If icFlags And INTERNET_CONNECTION_PROXY Then 
    IfOnline = "Online"
  End If
 
  ' Wenn Modem gerade arbeitet (Verbindung besteht oder wird aufgebaut)
  If icFlags And INTERNET_CONNECTION_MODEM_BUSY Then 
    IfOnline = "Online"
  End If
End Function

Ein Auruf der Funktion wäre dann z.B. so:

If IfOnline = "Offline" Then
  MsgBox "Es besteht keine Verbindung zum Internet." & vbCrLf & _
    "Bitte stellen Sie eine Online-Verbindung her und versuchen Sie es erneut."
End If



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.