Visual Basic проверка подключение к тырнету

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by ark_MaZaHaKa, 31 Oct 2011.

  1. ark_MaZaHaKa

    ark_MaZaHaKa New Member

    Joined:
    19 Apr 2011
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Visual Basic
    пишем свои примеры для проверки подключение к интернету
     
  2. ark_MaZaHaKa

    ark_MaZaHaKa New Member

    Joined:
    19 Apr 2011
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    1)ну вообще можно через Winsok, конектится к сайту, но через Винсок требует подключение библиотеки mswinsck.ocx, проблемма в том что библиотеки mswinsck.ocx в Windows 7 нет, и приходится регать файл mswinsck.ocx в системе и т.д.(этот геморой не нужен)

    2)Можно конечно так:

    Private Declare Function RasEnumConnections Lib "RasApi32.dll" Alias "RasEnumConnectionsA" (lpRasCon As Any, lpcb As Long, lpcConnections As Long) As Long
    Private Declare Function RasGetConnectStatus Lib "RasApi32.dll" Alias "RasGetConnectStatusA" (ByVal hRasCon As Long, lpStatus As Any) As Long
    Private Const RAS95_MaxEntryName = 256
    Private Const RAS95_MaxDeviceType = 16
    Private Const RAS95_MaxDeviceName = 32
    Private 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
    Private Type RASCONNSTATUS95
    dwSize As Long
    RasConnState As Long
    dwError As Long
    szDeviceType(RAS95_MaxDeviceType) As Byte
    szDeviceName(RAS95_MaxDeviceName) As Byte
    End Type
    Public 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)
    Tstatus.dwSize = 160
    RetVal = RasGetConnectStatus(TRasCon(0).hRasCon, Tstatus)
    If Tstatus.RasConnState = &H2000 Then
    IsConnected = True
    Else
    IsConnected = False
    End If
    End Function

    Private Sub Command1_Click()
    'если есть соединение, то IsConnected() = True, иначе False
    Select Case IsConnected()
    Case False
    MsgBox "Интернет не подключен"
    Case True
    MsgBox "Интернет включен"
    End Select
    End Sub



    Но на локальном тырнете не пашит! ((((

    З.Ы. Я пишу keylogger, т.е. при отправки логов на почту нужно проверить есть ли соединение с тырнетом!