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

https://www.vbarchiv.net
Rubrik: Internet & Netzwerk22.03.05
RasHangUp-Funktion

Diese Funktion trennt eine DFÜ-Verbindung und gibt die benötigten Ressourcen frei.

Betriebssystem:  Win95, Win98, WinNT 3.1, Win2000, WinMEViews:  7.646 

Deklaration:

Declare Function RasHangUp Lib "rasapi32.dll" _
  Alias "RasHangUpA" ( _
  ByVal hrasconn As Long) As Long

Beschreibung:
Diese Funktion trennt eine DFÜ-Verbindung und gibt die benötigten Ressourcen frei.

Parameter:
hrasconnErwartet das Handle einer DFÜ Verbindung, die getrennt werden soll.

Rückgabewert:
Ist die Funktion erfolgreich, so wird der Wert "1" zurückgegeben, andernfallswird ein Fehlercode zurückgegeben.

Beispiel:

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 Const RAS_MAXENTRYNAME = 256 ' Maximale Anzahl der Zeichen für den  
' Namen einer DFÜ-Verbindung
Private Const RAS_MAXDEVICETYPE = 16 ' Maximale Anzahl der Zeichen für den Gerätetyp 
Private Const RAS_MAXDEVICENAME = 128 ' Maximale Anzahl der Zeichen für den  
' Namen des Gerätes
 
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
 
Dim Connections() As RASCONN
' Aktive Verbindungen ermitteln
Private Sub Command1_Click()
  Dim i As Integer, TmpRasName As String
  Dim ConCount As Long, Retval As Long
 
  ' Listeninhalt löschen
  List1.Clear
 
  ' Array neu dimensionieren
  ReDim Connections(0 To 255)
 
  ' Struktur RASCONN vorinitialisieren
  Connections(0).dwSize = Len(Connections(0)) + 1
 
  ' Alle aktiven Verbindungen ermitteln
  Retval = RasEnumConnections(Connections(0), Connections(0).dwSize *  _
    255, ConCount)
  If Retval << 0 Then
    MsgBox "Die Funktion konnte nicht ausgeführt werden:"
    Exit Sub
 
  ElseIf ConCount = 0 Then
    MsgBox "Es ist keine Verbindung aktiv"
    Exit Sub
  End If
 
  ' Ermittelte Verbindungen der Liste hinzufügen
  For i = 0 To ConCount - 1
    TmpRasName = StrConv(Connections(i).szEntryName, vbUnicode)
    List1.AddItem Left$(TmpRasName, InStr(TmpRasName, vbNullChar) - 1)
    List1.ItemData(List1.NewIndex) = Connections(i).hrasconn
  Next i
End Sub
' Trennen der Verbindung
Private Sub List1_DblClick()
  Dim MsgRet As Long
 
  MsgRet = MsgBox("Wollen Sie die aktive Verbindung " & List1.Text & "  _
    wirklich trennen ?", vbYesNo + vbInformation, "Verbindung Trennen")
  If MsgRet = vbNo Then Exit Sub
 
  Call RasHangUp(List1.ItemData(List1.ListIndex))
End Sub

 
 
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.