Làm cách nào để nhận số sê-ri nội bộ của USB-Stick hoặc USB-HardDrive trong C#?Cách nhận số sê-ri của USB-Stick trong C#
Trả lời
Hãy thử điều này:
// add a reference to the System.Management assembly and
// import the System.Management namespace at the top in your "using" statement.
// Then in a method, or on a button click:
ManagementObjectSearcher theSearcher = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE InterfaceType='USB'");
foreach (ManagementObject currentObject in theSearcher.Get())
{
ManagementObject theSerialNumberObjectQuery = new ManagementObject("Win32_PhysicalMedia.Tag='" + currentObject["DeviceID"] + "'");
MessageBox.Show(theSerialNumberObjectQuery["SerialNumber"].ToString());
}
Một giải pháp sử dụng Win32 is described here
Edit: các liên kết ban đầu dường như đã mất tích. Ở trên là một bản sao được lưu trong bộ nhớ cache, và tác giả cũng đã viết một số mã mẫu trong VB.Net là still online here.
Cảm ơn, tôi đã tìm kiếm một cái gì đó như thế này mãi mãi! –
Tôi đã có vấn đề với các giải pháp được cung cấp bởi Yuval Adam như mọi USB tôi đã cố gắng trống trở lại trên cửa sổ 7.
tôi giải quyết điều này bằng cách chỉ nhìn vào PNPDeviceId tài sản trên đối tượng hiện hành.
Ví dụ:
currentObject["PNPDeviceID"].ToString();
Không chắc thế nào hợp lệ này là nhưng nó làm việc cho tôi trên 3 Sticks USB tôi đã cố gắng
Làm việc cho tôi cũng .... cảm ơn mẹ ..... –
công việc tuyệt vời tôi đã nhận số serial làm thế nào để tôi nhận được id dụ của usb. – KVK