FAQ. Windows ストアアプリ - ハードウェア/デバイスIDを取得する方法

お客様からお問い合わせが多いので、記事に残します。

「Windowsストアアプリでデバイスを識別するIDが必要なのですが、どのように取得したらいいですか?MACアドレスは取得できないことがわかっています。」

HardwareTokenクラスを使います。以下のコードを参考にしてください。(コードを提供してくれた荒井省三エバに感謝)

            var token = Windows.System.Profile.HardwareIdentification.GetPackageSpecificToken(null);
            var dataReader = Windows.Storage.Streams.DataReader.FromBuffer(token.Id);
            byte[] bytes = new byte[token.Id.Length];
            dataReader.ReadBytes(bytes);
            var id = BitConverter.ToString(bytes);

Comments

  • Anonymous
    December 04, 2012
    補足しておきます。(広告屋さんはガッカリする話です)・アプリごとに違う値が返ってきます。同じPCでも、別のアプリだと得られる値は違います。すなわち、複数のアプリをまたいで、ユーザーやハードウェアを追跡することはできません。・USBデバイスの付け外しで値が変化します。「たぶん同じPCだろう」という判定をするロジックは書けます。詳細はMSDNを。⇒ 「デバイスごとのアプリ ロジックを実装するためのアプリに固有のハードウェア ID (ASHWID) の使用に関するガイダンス」 msdn.microsoft.com/.../jj553431.aspx
  • Anonymous
    December 06, 2012
    The comment has been removed