5

物理ディスクのシリアル番号を取得するために、C++でWMIを使用しています。

Windows 7 64ビットでは、シリアル番号が記載された文字列を取得します。

同じアプリケーションをWindowsXP64ビットマシンで実行すると、各文字の値が逆になっている16進文字列が表示されます。

これまでに3つの異なる動作に気づきました。

  1. Windows764ビット文字列を期待どおりの正しい順序で
  2. Windows XP 64ビット(マシン1)16進文字列、逆バイト順序
  3. Windows XP 64ビット(マシン2)逆バイト順の文字列

私はwbemtest.exeを使用し、これらの結果が自分のコードではなくWMIからのものであることを確認しました。

DeviceIOControlを使用してSMART情報を取得すると、常にシリアル番号がバイト順序が逆の16進文字列として取得されます。

これは予想される動作であり、これをどのように処理しますか?

4

0 に答える 0