На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: SCINER, B.V.
  
    > Как программно отключиться от Интернета
      ExpandedWrap disabled
        Const RAS_MAXENTRYNAME As Integer = 256
        Const RAS_MAXDEVICETYPE As Integer = 16
        Const RAS_MAXDEVICENAME As Integer = 128
        Const RAS_RASCONNSIZE As Integer = 412
        Const ERROR_SUCCESS = 0&
         
        Private Type RasEntryName
        dwSize As Long
        szEntryName(RAS_MAXENTRYNAME) As Byte
        End Type
         
        Private Type RasConn
        dwSize As Long
        hRasConn As Long
        szEntryName(RAS_MAXENTRYNAME) As Byte
        szDeviceType(RAS_MAXDEVICETYPE) As Byte
        szDeviceName(RAS_MAXDEVICENAME) As Byte
        End Type
         
        Private Declare Function RasEnumConnections Lib "rasapi32.dll" Alias "RasEnumConnectionsA" _
        (lpRasConn As Any, lpcb As Long, lpcConnections As Long) As Long
        Private Declare Function RasHangUp Lib "rasapi32.dll" Alias "RasHangUpA" _
        (ByVal hRasConn As Long) As Long
        Private gstrISPName As String
        Public ReturnCode As Long
         
        Public Sub HangUp()
        Dim i As Long
        Dim lpRasConn(255) As RasConn
        Dim lpcb As Long
        Dim lpcConnections As Long
        Dim hRasConn As Long
        lpRasConn(0).dwSize = RAS_RASCONNSIZE
        lpcb = RAS_MAXENTRYNAME * lpRasConn(0).dwSize
        lpcConnections = 0
        ReturnCode = RasEnumConnections(lpRasConn(0), lpcb, lpcConnections)
        If ReturnCode = ERROR_SUCCESS Then
        For i = 0 To lpcConnections - 1
        If Trim(ByteToString(lpRasConn(i).szEntryName)) = Trim(gstrISPName) Then
        hRasConn = lpRasConn(i).hRasConn
        ReturnCode = RasHangUp(ByVal hRasConn)
        End If
        Next i
        End If
        End Sub
         
        Public Function ByteToString(bytString() As Byte) As String
        Dim i As Integer
        ByteToString = ""
        i = 0
        While bytString(i) = 0&
        ByteToString = ByteToString & Chr(bytString(i))
        i = i + 1
        Wend
        End Function


      Использование:
      Просто вызовите функцию HangUp
      Сообщение отредактировано: SCINER -
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0348 ]   [ 17 queries used ]   [ Generated: 25.04.24, 14:02 GMT ]