c# 读取u盘序列号进行验证的示例代码
private List_serialNumber = new List (); public void matchDriveLetterWithSeral() { _serialNumber.Clear(); string[] diskArray; string driveNumber; var searcher = new ManagementObjectSearcher("select * from Win32_LogicalDiskToPartition"); foreach (ManagementObject dm in searcher.Get()) { getValueInQuotes(dm["Dependent"].ToString()); diskArray = getValueInQuotes(dm["Antecedent"].ToString()).Split(','); driveNumber = diskArray[0].Remove(0, 6).Trim(); var disks = new ManagementObjectSearcher("select * from Win32_DiskDrive"); foreach (ManagementObject disk in disks.Get()) { if(disk["Name"].ToString()==("\\\\.\\PHYSICALDRIVE"+driveNumber)&&disk["InterfaceType"].ToString()=="USB") { _serialNumber.Add(parseSerialFromDeviceID(disk["PNPDeviceID"].ToString())); } } } }










