Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mendapatkan Senarai Peranti USB yang Disambungkan dalam Windows?

Bagaimana untuk Mendapatkan Senarai Peranti USB yang Disambungkan dalam Windows?

Susan Sarandon
Susan Sarandonasal
2025-01-25 00:47:101016semak imbas

How to Retrieve a List of Connected USB Devices in Windows?

Dapatkan senarai peranti USB yang disambungkan

Apabila berurusan dengan peranti USB, anda selalunya perlu mendapatkan senarai semua peranti USB yang disambungkan. Dalam persekitaran Windows, ini boleh dicapai menggunakan kelas System.Management ruang nama ManagementObjectSearcher.

Mula-mula, tambahkan rujukan pada System.Management pada projek anda. Setelah ini selesai, anda boleh menggunakan coretan kod berikut untuk mendapatkan semula senarai peranti USB yang disambungkan:

<code class="language-csharp">using System;
using System.Collections.Generic;
using System.Management; // 需要在项目引用中添加 System.Management。

class Program
{
    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();
    }

    static List<USBDeviceInfo> GetUSBDevices()
    {
        List<USBDeviceInfo> 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;
    }
}

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>

Kaedah GetUSBDevices() dalam coretan di atas mengembalikan senarai USBDeviceInfo objek yang mengandungi sifat DeviceID, PNPDeviceID dan Description. Sifat ini masing-masing mewakili pengecam unik peranti, ID peranti Palam dan Main dan perihalan peranti.

Dengan menggunakan kod ini, anda boleh mendapatkan senarai semua peranti USB yang disambungkan dengan mudah pada komputer Windows anda dan mengakses sifatnya untuk pemprosesan selanjutnya.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Senarai Peranti USB yang Disambungkan dalam Windows?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn