Existuje v API funkcia na test pripojenia internetu ? Hapruje mi internet a potrebujem vytvoriť program na sledovanie pripojenia. Dík.
Fórum › Visual Basic
Tetst pripojenia internetu
Zkus toto: Na formulář si vlož Label a Timer. Timeru nastav interval treba 5000 a do zdrojového kodu vlož toto:
Option Explicit
Private Declare Function InternetGetConnectedState Lib "wininet" (ByRef dwflags As Long, ByVal dwreserved As Long) As Long
Private Const CONNECT_LAN As Long = &H2
Private Const CONNECT_MODEM As Long = &H1
Private Const CONNECT_PROXY As Long = &H4
Private Const CONNECT_OFFLINE As Long = &H20
Private Const CONNECT_CONFIGURED As Long = &H40
Public Function IsWebConnected(Optional ByRef ConnType As String) As Boolean
Dim dwflags As Long
Dim WebTest As Boolean
ConnType = ""
WebTest = InternetGetConnectedState(dwflags, 0&)
Select Case WebTest
Case dwflags And CONNECT_LAN
ConnType = "LAN"
Case dwflags And CONNECT_MODEM
ConnType = "MODEM"
Case dwflags And CONNECT_PROXY
ConnType = "PROXY"
Case dwflags And CONNECT_OFFLINE
ConnType = "OFFLINE"
Case dwflags And CONNECT_CONFIGURED
ConnType = "CONFIGURED"
End Select
IsWebConnected = WebTest
End Function
Private Sub Form_Load()
If IsWebConnected = False Then
Label1.Caption = "jste offline"
End If
If IsWebConnected = True Then
Label1.Caption = "jste online"
End If
End Sub
Private Sub Timer1_Timer()
Form_Load
End Sub
Vďaka Tvojmu príspevku som sa začal hrabaťv API funkciách, pretože táto nenaplnila moje očakávania. InternetGetConnectedState ako aj InternetGetConnectedStateEx testuje okrem pripojenia aj typ koncového zariadenia . Na test pripojenia by z nej stačilo toto :
If InternetGetConnectedState(0&, 0&) = 1 Then
MsgBox "You are connected " , vbInformation 'pripojené
Else
MsgBox"You are not connected to internet", vbInformation 'nepripojené
End If
Existujú ešte aj ďalšie funkcie : InternetConnect,InetIsOffline,InternetAttemptConnect atď . Všetky spomenuté však otestujú iba stav lokálneho pripojenia. Keďže ja som pripojený cez router, tak aj po rozpade pripojenia (keď reštartuje, pripája sa resp. kontrolka adsl2 bliká), vždy vracajú tieto funkcie hodnotu TRUE , pretože sieťové pripojenie Windows je funkčné ! V skutočnosti som ale bez pripojenia !
Jedinou možnou funkciou je InternetCheckConnection , ktorá vyhľadá , alebo sa pripojí na nejakú web stránku a vráti tak úspešnosť spojenia :
If InternetCheckConnection("http://programujte.com/",FLAG_ICC_FORCE_CONNECTION, 0&) = 0 Then
MsgBox "Stránka sa nedá zobraziť, alebo je spojenie prerušené !", vbInformation
Else
MsgBox "Spojenie bolo úspešné !", vbInformation
End If
Pozdravujem Vás .
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 2 hosté
Podobná vlákna
Pripojenia na internet — založil M4st3R
Udrzovanie otvoreneho pripojenia — založil peter ciz
Winsock - zistenie pripojenia — založil atsip
Spomalovac internetu:) — založil dalaman
Výpadky internetu — založil Pig
Moderátoři diskuze