Есть, например, варианты, как получить серийный номер USB-flash:
1. прочитать значение используя функции WinAPI для работы с реестром, т.е. взять раздел
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Disk\Enum"
и получить к примеру:
"USBSTOR\Disk&Ven_CANYON&Prod_CN-USB20EFD0512A&Rev_1.0\d183b6e00603dd&0"
2. получить тоже используя другие функции WinAPI такие как:
SetupDiGetClassDev, SetupDiEnumDeviceInterfaces, SetupDiGetDeviceInterfaceDetail и др.
Оба варианта работают с реестром и берут от туда данные, т.е. не с физическим устройством на низком уровне (например, через DeviceIoControl), или я ошибаюсь?
Если да, то в чем разница вариантов?
И попутно ещё вопрос:
- по тому же разделу в реестре значение для HDD:
"IDE\DiskST1000DM003-1CH162______________________CC46____\5&3b037a04&0&5.0.0"
выделенное не серийный номер физического устройства и не логического диска, но тогда что?