首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何发现USB存储设备和可写CD/DVD驱动器(C#)

要在C#中发现USB存储设备和可写CD/DVD驱动器,您可以使用Windows API函数和WMI(Windows Management Instrumentation)查询。以下是一个简单的示例,展示了如何使用WMI查询来检测可移动设备。

首先,确保已经添加了System.Management命名空间的引用。

代码语言:csharp
复制
using System;
using System.Management;

然后,您可以使用以下代码来查询可移动设备:

代码语言:csharp
复制
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查询来解决问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

电脑DVD光驱变成CD光驱的解决方法

相信很多朋友都遇到过这个问题:电脑的DVD光驱盘符突然变成CD光驱,然而DVD数据光盘可以正常读取的问题。设备管理器里显示的也是DVD,但我的电脑里就是显示CD驱动器。虽然能正常使用,但看着总是不爽吧。我也遇到过几次,到网上查了查都说了一堆废话,没一个能解决问题的,于是自己研究了下,其实很简单啦。以前优化系统的时候总是会优化一下服务,把不用的都关了,让它不自动启动,其实就是这个服务的问题。 解决办法是:开始-运行-msconfig-服务选项卡,找到Shell Hardware Detection 勾选它,让它自动启动就行了。想立即生效的话再运行services.msc 找到这个服务,属性-启动。打开我的电脑看看,DVD回来了吧!

02
领券