c#获取对象的唯一标识_c# – 如何在Windows 10 Universal中获取设备的唯一标识符?...

这是Windows桌面的完整解决方案:

>添加扩展引用“Windows桌面扩展的UWP”像Peter Torr – MSFT提到.

使用此代码获取HardwareId:

using System;

using Windows.Security.ExchangeActiveSyncProvisioning;

using Windows.System.Profile;

namespace Tobit.Software.Device

{

public sealed class DeviceInfo

{

private static DeviceInfo _Instance;

public static DeviceInfo Instance

{

get {

if (_Instance == null)

_Instance = new DeviceInfo();

return _Instance; }

}

public string Id { get; private set; }

public string Model { get; private set; }

public string Manufracturer { get; private set; }

public string Name { get; private set; }

public static string OSName { get; set; }

private DeviceInfo()

{

Id = GetId();

var deviceInformation = new EasClientDeviceInformation();

Model = deviceInformation.SystemProductName;

Manufracturer = deviceInformation.SystemManufacturer;

Name = deviceInformation.FriendlyName;

OSName = deviceInformation.OperatingSystem;

}

private static string GetId()

{

if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.System.Profile.HardwareIdentification"))

{

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).Replace("-", "");

}

throw new Exception("NO API FOR DEVICE ID PRESENT!");

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值