Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Czy jest się połączonym?
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003
Czy jest się połączonym?

Jak sprawdzić (z VB), czy jest siępołączonym z netem?


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

11-07-2004 15:25
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
Chudy
[TLHW]Wiktor



Typ: moderator
Postów: 574
Zarejestrowany: Aug 2002

Zależy przez co. Najlepiej póścić ping np. do Onet.pl.


_____________________________________________
Projekt "Thunder Cannons" nadchodzi...

11-07-2004 15:48
Pokaż profil Chudy  Wyślij email do Chudy   Odwiedź stronę Chudy       1220895
karolinavb




Typ: neutral
Postów: 468
Zarejestrowany: Jan 2003

Popatrz na stronę http://www.vbaction.net/stanpol.html
cytuję :

Procedura sprawdzająca stan połączenia z internetem

Wyobraźcie sobie, że chcecie napisać taryfikator połączenia modemowego. Pierwszą rzeczą, jakiej będziecie potrzebować, jest procedurka, która "poinformuje" program o tym, czy w danym momencie komputer jest połączony z internetem. Dopiero wtedy możemy przystąpić do liczenia impulsów. Oto prosty kod, który to umożliwi. Skorzystamy, jak to często bywa, z funkcji API systemu Windows. Potrzebne deklaracje:

Public Declare Function RasEnumConnections Lib "RasApi32.dll" Alias _
    "RasEnumConnectionsA" (lpRasCon As Any, lpcb As Long, _
    lpcConnections As Long) As Long
Public Declare Function RasGetConnectStatus Lib "RasApi32.dll"_
    Alias "RasGetConnectStatusA" _
    (ByVal hRasCon As Long, lpStatus As Any) As Long

Public Const RAS95_MaxEntryName = 256
Public Const RAS95_MaxDeviceType = 16
Public Const RAS95_MaxDeviceName = 32

Public Type RASCONN95
    dwSize As Long
    hRasCon As Long
    szEntryName(RAS95_MaxEntryName) As Byte
    szDeviceType(RAS95_MaxDeviceType) As Byte
    szDeviceName(RAS95_MaxDeviceName) As Byte
End Type

Public Type RASCONNSTATUS95
    dwSize As Long
    RasConnState As Long
    dwError As Long
    szDeviceType(RAS95_MaxDeviceType) As Byte
    szDeviceName(RAS95_MaxDeviceName) As Byte
End Type

Teraz czas na samą procedurę:

Function IsConnected() As Boolean
    Dim TRasCon(255) As RASCONN95
    Dim lg As Long
    Dim lpcon As Long
    Dim RetVal As Long
    Dim Tstatus As RASCONNSTATUS95
    TRasCon(0).dwSize = 412
    lg = 256 * TRasCon(0).dwSize
    RetVal = RasEnumConnections(TRasCon(0), lg, lpcon)
    If RetVal <> 0 Then
        MsgBox "ERROR"
        Exit Function
    End If
    Tstatus.dwSize = 160
    RetVal = RasGetConnectStatus(TRasCon(0).hRasCon, Tstatus)
    'jezeli jest polączenie
    If Tstatus.RasConnState = &H2000 Then
        'to funkcja zwraca true
        IsConnected = True
    Else
        'jeśli nie to zwraca false
        IsConnected = False
    End If
End Function

I teraz już wystarczy zwykła strukturka sterująca, która sprawdzi, czy procedura funkcyjna zwróci True, czy False, np.:

Private Sub Form_Load()
If IsConnected = True Then
    MsgBox ("Połączony z internetem" ), , "Stan połączenia"
ElseIf IsConnected = False Then
    MsgBox ("Brak połączenia z internetem" ), , "Stan połączenia"
End If
End Sub

analog...

http://filipcynarski.fm.interia.pl/tip13.html

oraz http://abstractvb.com/code.asp?A=1073 - "Determine if you have an Active Internet Connection"


_____________________________________________
Karolina

12-07-2004 10:24
Pokaż profil karolinavb  Wyślij email do karolinavb   
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

Dzięki za pomoc! Karolina? Ty chyba cały czas w necie na VB-stronach siedzisz i masz dość pojemną głowę, albo jesteś taka ambitna


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

13-07-2004 14:56
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
Viper87



Typ: neutral
Postów: 490
Zarejestrowany: Oct 2002

Gdybyś przejrzał stare wątki, to zobaczyłbyś, że już keidyś ktoś miał taki problem jak Ty i podałem mu dokładnie tę samą stronę co Karolina...


_____________________________________________
Viper

"Savoir c`est prevoir, prevoir c`est prevenir". 
(Wiedzieć to przewidzieć, przewidzieć to zapobiegać) 


13-07-2004 17:32
Pokaż profil Viper87  Wyślij email do Viper87   Odwiedź stronę Viper87  
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

szukałem, ale nie znalazłem


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

13-07-2004 22:50
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
Wszystkich odpowiedzi: 5 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1