OVH Cloud OVH Cloud

pb API Rasenumconnection

1 réponse
Avatar
faraminal
Bonjour
Je voudrais déconnecter ma liason internet dans un programme Visual Basic.net.
Le premier stade consiste à acquerir le handle de cette connexion à l'aide
de la fonction API Windows RasEnumConnections.
Je n'arrive pas à faire marcher cette fonction malgré toutes les astuces
d'interopérabilité .NET et autres marshaling que j'ai pu glaner ici ou là.
Connaissez-vous un exemple de code Visual Basic.net de cette fonction dont
je pourrais m'inspirer.
Après de longues recherches sur le web j'ai trouvé des dizaines d'exemples
en VB6 mais aucun en VB.net
Merci mille fois par avance.
--
faraminal

1 réponse

Avatar
Euclide
Ci-joint un exemple en VB6 si cela peux t'aider:

Const RAS_MAXENTRYNAME = 256
Const RAS_MAXDEVICETYPE = 16
Const RAS_MAXDEVICENAME = 128
Const RAS_RASCONNSIZE = 412
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 Sub Form_Load()
open an Internet-connection.
Dim i As Long, lpRasConn(255) As RasConn, lpcb As Long
Dim lpcConnections As Long, hRasConn As Long
'Set the structure's size
lpRasConn(0).dwSize = RAS_RASCONNSIZE
lpcb = RAS_MAXENTRYNAME * lpRasConn(0).dwSize
lpcConnections = 0
'Enumerate all the available connections
returncode = RasEnumConnections(lpRasConn(0), lpcb, lpcConnections)

If returncode = 0 Then
For i = 0 To lpcConnections - 1
hRasConn = lpRasConn(i).hRasConn
'Hang up
returncode = RasHangUp(ByVal hRasConn)
Next i
End If
End Sub


"faraminal" a écrit :

Bonjour
Je voudrais déconnecter ma liason internet dans un programme Visual Basic.net.
Le premier stade consiste à acquerir le handle de cette connexion à l'aide
de la fonction API Windows RasEnumConnections.
Je n'arrive pas à faire marcher cette fonction malgré toutes les astuces
d'interopérabilité .NET et autres marshaling que j'ai pu glaner ici ou là.
Connaissez-vous un exemple de code Visual Basic.net de cette fonction dont
je pourrais m'inspirer.
Après de longues recherches sur le web j'ai trouvé des dizaines d'exemples
en VB6 mais aucun en VB.net
Merci mille fois par avance.
--
faraminal