Heim > Backend-Entwicklung > C++ > Wie kann ich alle verbundenen USB -Geräte in Windows mit C#auflisten?

Wie kann ich alle verbundenen USB -Geräte in Windows mit C#auflisten?

Barbara Streisand
Freigeben: 2025-01-25 00:57:09
Original
118 Leute haben es durchsucht

How Can I List All Connected USB Devices in Windows Using C#?

In Windows ist das USB -Gerät im angeschlossenen USB -Gerät

aufgeführt. <:> Frage:

So identifizieren und erhalten Sie alle USB -Geräte, die mit dem Windows -System verbunden sind?

Lösung:

Durch Integrieren von Namensraum in Ihr Projekt können Sie den folgenden Code verwenden, um die Liste der USB -Geräte abzurufen:

Diese Lösung verwendet

Namensbereich, um auf die System.Management -Klasse zuzugreifen, sodass Sie die

-Klasse abfragen können, um USB -Geräte zu finden. Der von der Code -Iteration zurückgegebene Set, um relevante Informationen wie Geräte -ID, PNP -Geräte -ID und Beschreibung zu extrahieren, um eine vollständige Liste angeschlossener USB -Geräte bereitzustellen.
<code class="language-csharp">using System;
using System.Collections.Generic;
using System.Management; // 将 System.Management 添加到您的项目引用中。

public class Program
{
    public static void Main(string[] args)
    {
        var usbDevices = GetUSBDevices();

        foreach (var usbDevice in usbDevices)
        {
            Console.WriteLine(
                $"设备 ID:{usbDevice.DeviceID},PNP 设备 ID:{usbDevice.PnpDeviceID},描述:{usbDevice.Description}");
        }

        Console.ReadKey();
    }

    public static List<USBDeviceInfo> GetUSBDevices()
    {
        var devices = new List<USBDeviceInfo>();

        using (var searcher = new ManagementObjectSearcher(@"Select * From Win32_USBHub"))
        using (var collection = searcher.Get())
        {
            foreach (var device in collection)
            {
                devices.Add(new USBDeviceInfo(
                    (string)device.GetPropertyValue("DeviceID"),
                    (string)device.GetPropertyValue("PNPDeviceID"),
                    (string)device.GetPropertyValue("Description")
                    ));
            }
        }
        return devices;
    }
}

public class USBDeviceInfo
{
    public USBDeviceInfo(string deviceID, string pnpDeviceID, string description)
    {
        DeviceID = deviceID;
        PnpDeviceID = pnpDeviceID;
        Description = description;
    }
    public string DeviceID { get; private set; }
    public string PnpDeviceID { get; private set; }
    public string Description { get; private set; }
}</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich alle verbundenen USB -Geräte in Windows mit C#auflisten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage