2016-05-30 3 views
0

Je suis en train de lire les cartes réseau as seen here au moment où je me sers du code que je trouve en ligneEn vb.net comment voulez-vous lire des dispositifs non-cachés comme on le voit dans le gestionnaire de périphériques section Adaptateur réseau

Sub Main() 
    Dim path As ManagementPath = New ManagementPath() 
    path.Server = "." 
    path.NamespacePath = "root\CIMV2" 
    Dim scope As ManagementScope = New ManagementScope(path) 
    Dim query As ObjectQuery = New ObjectQuery("SELECT * FROM Win32_NetworkAdapter") 
    Dim searcher As ManagementObjectSearcher = New ManagementObjectSearcher(scope, query) 
    Dim queryCollection As ManagementObjectCollection = searcher.Get() 
    Dim m As ManagementObject 
    For Each m In queryCollection 
      Console.WriteLine("Device Name : {0}", m("Name")) 
    Next 
    Console.ReadLine() 
End Sub 

En ce moment, je vois une liste de périphériques qui incluent ces 4, mais aussi un tas de périphériques cachés et ce qui ressemble à des périphériques qui ne sont plus connectés. Comment affiner ma recherche pour afficher uniquement ce que le gestionnaire de périphériques affiche par défaut?

Répondre

0

J'ai trouvé ma réponse sur un autre forum, mais je ne trouve plus le lien. Voici la réponse:

Dim moIP As ManagementObject 
    Dim myNet = New ManagementObjectSearcher _ 
    ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True") 
    Dim CountIncrement As Int16 = 1 
    For Each moIP In myNet.Get    
     Console.WriteLine() 
     'find device with MAC Address 
     If CStr(moIP("MACAddress")) = "00:11:22:33:44:55" Then 
      'code here 
     End If 
    Next 

Edit: l'intérieur de la boucle, ces contrôles peut également être fait pour trouver des informations sur les périphériques connectés.

 Console.WriteLine("Device Name : {0}", moIP("Caption")) 
     Console.WriteLine("Service Name : {0}", moIP("ServiceName")) 
     Console.WriteLine("Description Name : {0}", moIP("Description")) 
     Console.WriteLine("MAC : {0}", moIP("MACAddress")) 
     Console.WriteLine(moIP("IPAddress")(0))