我们正在开发一个需要知道其运行设备的序列号的应用程序。该应用程序适用于保险公司,用户可以通过该公司直接为设备购买保险。对于保险单,需要序列号。是否可以使用WinRT或Metro风格应用中可以使用的任何API检索设备的序列号?

最佳答案

我不知道它是否完全符合您的需求,但是可以唯一地标识设备(自Windows 8 RTM起)。

private string GetHardwareId()
{
    var token = HardwareIdentification.GetPackageSpecificToken(null);
    var hardwareId = token.Id;
    var dataReader = Windows.Storage.Streams.DataReader.FromBuffer(hardwareId);

    byte[] bytes = new byte[hardwareId.Length];
    dataReader.ReadBytes(bytes);

    return BitConverter.ToString(bytes);
}

08-19 19:23