Hallo!
Ich versuche die angeschlossenen USB-Sticks und externen Festplatten des PCs auszulesen:
try
{
ManagementScope scope = new ManagementScope(ManagementPath.DefaultPath);
SelectQuery wql = new SelectQuery("SELECT * FROM Win32_LogicalDisk WHERE Name != ''");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, wql);
DriveInfo driveInfo;
foreach (ManagementObject item in searcher.Get())
{
driveInfo = new DriveInfo(item["DeviceID"].ToString());
listBox1.Items.Add(string.Format("{0} ({1}) ({2:N2} GB) ({3})", item["DeviceID"], item["VolumeName"], item , driveInfo.DriveType);
}
}
catch (Exception error)
{
Console.WriteLine(error);
}
USB-Sticks kann man leicht mit DriveType (= "removable") herausfiltern, allerdings habe ich bisher nirgends einen Unterscheid zwischen internen und externen Festplatten gefunden, beide werden als DriveType = "fixed" angezeigt.
Gibt es da eine Möglichkeit?
Danke!
Gruß Dennis
Hallo!
Es wurde hier im Forum schon mal das Thema behandelt, wie man das Anschließen von USB-Geräten erkennen kann. Das hat bei mir auch mit USB-Festplatten funktioniert.
Nobody is perfect. I'm sad, i'm not nobody 🙁
Hallo danke für den Link, hatte ihn nich gesehen.
Trotzdem habe ich noch ein Problem:
Bei Decription kommt nun immer "USB-Massenspeichergerät".
Soweit, so gut - aber was mache ich nun, wenn mein Programm auf einem anders-srpachigem System läuft?
Gruß Dennis