要在C#中发现USB存储设备和可写CD/DVD驱动器,您可以使用Windows API函数和WMI(Windows Management Instrumentation)查询。以下是一个简单的示例,展示了如何使用WMI查询来检测可移动设备。
首先,确保已经添加了System.Management
命名空间的引用。
using System;
using System.Management;
然后,您可以使用以下代码来查询可移动设备:
public static void FindRemovableDevices()
{
// 创建WMI查询
string query = "SELECT * FROM Win32_DiskDrive WHERE InterfaceType='USB'";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
// 执行查询
foreach (ManagementObject wmiDevice in searcher.Get())
{
// 获取设备名称和设备ID
string deviceName = wmiDevice["Model"]?.ToString();
string deviceId = wmiDevice["DeviceID"]?.ToString();
// 检查设备是否为可写CD/DVD驱动器
bool isWritableCDDVD = deviceName?.Contains("CD/DVD") == true;
// 输出设备信息
Console.WriteLine($"Device Name: {deviceName}, Device ID: {deviceId}, Writable CD/DVD: {isWritableCDDVD}");
}
}
这个示例将查询所有USB接口的设备,并检查它们是否为可写CD/DVD驱动器。请注意,这个示例可能需要管理员权限才能正常工作。
在这个示例中,我们没有使用任何云计算品牌商,而是使用了C#和WMI查询来解决问题。
领取专属 10元无门槛券
手把手带您无忧上云