Я использую WMI с C ++ для получения серийного номера физического диска.
В Windows 7 64bit я получаю строку с серийным номером.
При запуске того же приложения на 64-битной машине с Windows XP я получаю шестнадцатеричную строку со значениями каждого символа в обратном порядке.
До сих пор я заметил 3 разных поведения:
- Windows 7 64bit
Строка в правильном порядке, как ожидалось
- Windows XP 64bit (машина 1)
Шестнадцатеричная строка, обратный порядок байтов
- Windows XP 64bit (машина 2)
Строка в обратном порядке байтов
Я использовал wbemtest.exe и подтвердил, что эти результаты получены из WMI, а не из моего собственного кода.
Когда я использую DeviceIOControl и получаю информацию SMART, я всегда получаю серийный номер в виде шестнадцатеричной строки с обратным порядком байтов.
Это ожидаемое поведение и как с этим справиться?