WMI Win32_PhysicalMedia SerialNumber有时是hex的,有时是以相反的字节顺序

我正在使用WMI与C ++获取物理磁盘序列号

Windows 7 64位上,我得到一个带有序列号的string。

而当在Windows XP 64位机器上运行相同的应用程序时,我得到一个hexstring与每个字符的值颠倒。

到目前为止,我注意到了3种不同的行为

  1. Windows 7 64bitstring以正确的顺序
  2. Windows XP 64位(机器1)hexstring,颠倒的字节顺序
  3. Windows XP 64位(机器2)string反向字节顺序

我已经使用wbemtest.exe并确认这些结果来自WMI,而不是我自己的代码。

当我使用DeviceIOControl并获取SMART信息时,我始终将序列号作为具有反向字节顺序的hexstring。

这是预期的行为,以及如何处理这个?

Solutions Collecting From Web of "WMI Win32_PhysicalMedia SerialNumber有时是hex的,有时是以相反的字节顺序"