![]() |
Anzeige:
|
|
|||||||
| Visual Basic, Visual Basic.NET Alles zum Thema - Visual Basic und Visual Basic.NET
Fragen zu VBA bitte in das Forum Office-Anwendungen posten! |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#1 (Direktlink) |
|
Gast
Beiträge: n/a
|
Hallo, ich brauche in meinem VB Programm, wenn jemand das Netzwerkkabel entfernt. Ich will das nicht zyklisch abfragen, sondern brauche das Ereigniss, wie wenn bei Windows das Popup kommt " Kein Netzwerkabel angeschlossen"
Kann mir da jemand helfen? Grüße Markus |
|
|
|
|
#2 (Direktlink) |
|
Stammuser
![]() Registriert seit: 08.01.2004
Beiträge: 471
|
Mit einem Ereignis geht das nicht. Die einzige Möglichkeit ist ein Timer, der immer wieder prüft, ob sich der Status geändert hat.
Ich hab dir mal eine Function aus diesem Tipp zusammengebastelt: Code:
Private Function DeactiveLAN() As Boolean
Dim objWMIService As Variant
Dim colAdapters As Variant
Dim objAdapter As Variant
Dim i As Long
' Hier werden alle Adapter ermittelt, die nicht verbunden sind
Set objWMIService = GetObject _
("winmgmts:" & "!\\.\root\cimv2")
Set colAdapters = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapter Where NetConnectionStatus = 7")
i = 0
For Each objAdapter In colAdapters
If Not IsNull(objAdapter.MACAddress) Then
i = i + 1
End If
Next
If i = 0 Then
DeactiveLAN = False
Else
DeactiveLAN = True
End If
End Function
|
|
|
|
![]() |
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|