c# - 如何通过序列号获取 CD/DVD-ROM 驱动器号
问题描述
我正在尝试使用他们提供的 PTRobot API 与 Primera Disc Duplicator 进行交互。他们的 API 返回有关机器人中记录器驱动器的信息,但缺少的关键部分是驱动器号。
他们返回的信息是型号名称、固件和序列号。
我需要区分一个单元中的多个相同驱动器,并且序列号是唯一提供的唯一值。
我发现了很多相反的例子(使用驱动器号来获取型号或序列号),但没有一个看起来可以翻转以供我使用。
解决方案
您可以编写一个例程,通过检查每个驱动器来构建按序列号散列的驱动器字典。然后,您就有了使用 PTRobot api 所需的缺失信息。
编辑:
如何获取硬盘序列号的示例代码。未经测试,因为我不再有 Windows 设备
以下可以帮助您:
searcher = new
ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
int i = 0;
foreach(ManagementObject wmi_HD in searcher.Get())
{
// get the hard drive from collection
// using index
HardDrive hd = (HardDrive)hdCollection[i];
// get the hardware serial no.
if (wmi_HD["SerialNumber"] == null)
hd.SerialNo = "None";
else
hd.SerialNo = wmi_HD["SerialNumber"].ToString();
++i;
}
推荐阅读
- excel - 当工作簿在 vba 中不可见时,如何达到单元格值
- python - 生成随机唯一的 3D 二进制矩阵
- android - getContentResolver 上不存在 Android _data'
- angular - 将 Angular 5 升级到 9 时出现“不兼容的对等依赖”错误
- javascript - 如何从选定的 Kendo Grid 行中填充表单
- python - 使用来自 spotify API 的 pandas 构建去规范化数据框的最佳方法
- mysql - 无论行是否更新,如何在 UPDATE 语句中输出列
- r - 按ID合并了两个数据集,现在观察多了
- angular - 为什么数组在Angular中意外更改
- cross-platform - 在 Ubuntu 上制作一个在 Mac 上运行的 python 可执行文件