[GELÖST] Netzlaufwerk Informationen auslesen

  • VB.NET

    [GELÖST] Netzlaufwerk Informationen auslesen

    Ich möchte in einer Liste die aktuell verbundenen Netzlaufwerke anzeigen lassen. Mit Environment.GetLogicalDrives lese ich alle Laufwerke ein und Filtere nach dem DriveType. Alle mit dem Type Network sollen in meiner Liste angezeigt werden mit Laufwerksbuchstaben und dem verbundenen Ordner z.B. \\Server\Ordner\SubOrdner.
    Den Laufwerkbuchstaben bekomme ich jedoch nicht den Ordnerpfad.

    Hier mein Code:

    VB.NET-Quellcode

    1. Dim aDrives As New ArrayList
    2. aDrives.AddRange(Environment.GetLogicalDrives)
    3. For Each oDrives In aDrives
    4. Dim oInfo As New IO.DriveInfo(oDrives)
    5. If oInfo.DriveType = IO.DriveType.Network Then
    6. lstLocalNetDrives.Items.Add(oInfo.Name & " | " & oInfo.VolumeLabel)
    7. End If
    8. Next


    Edit: So habe es nach lagem suchen und probieren doch selber hinbekommen. Wer auch die Lösung sucht:

    msdn.microsoft.com/de-de/libra…gementobjectsearcher.aspx

    und so sieht meine leicht abgewandelte Methode aus:

    Verweise hinzufügen -> .NET -> System.Management

    VB.NET-Quellcode

    1. Imports System
    2. Imports System.Management
    3. Module mdlFunctions
    4. Public Function getDriveInfo(ByVal sDriveLetter As String) As String
    5. Dim sProvider As New ManagementObjectSearcher("Select ProviderName FROM Win32_MappedLogicalDisk WHERE DeviceID='" & sDriveLetter & "'")
    6. Dim vReturnString As String = "False"
    7. For Each mapping As ManagementObject In sProvider.Get()
    8. vReturnString = mapping("ProviderName")
    9. Next
    10. Return vReturnString
    11. End Function
    12. End Module

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Dodo“ ()