gpt4 book ai didi

c# - 如何在 Windows 10 Universal 中获取设备的唯一标识符?

转载 作者:太空宇宙 更新时间:2023-11-03 14:39:58 30 4
gpt4 key购买 nike

这是我为 Windows Universal 8.1 获取唯一 DeviceID 的旧实现,但 HardwareIdentification 类型不再存在。

    private static string GetId()
{
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("-", "");
}

最佳答案

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

  • 添加扩展引用“UWP 的 Windows 桌面扩展”,如 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!");
}
}
}

关于c# - 如何在 Windows 10 Universal 中获取设备的唯一标识符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57559688/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com