【问题标题】:Which hardware ID is unique? [duplicate]哪个硬件 ID 是唯一的? [复制]
【发布时间】:2018-03-05 02:12:39
【问题描述】:

我想制作一个软件来使用唯一的 ID 来激活它。所以我得到了软件序列号的mac地址,但在某些计算机中,mac被计算机重置而改变。所以我必须再次设置序列号来激活软件。

您建议在 C# 中使用什么序列号?

【问题讨论】:

    标签: c# sql-server windows uniqueidentifier


    【解决方案1】:

    没有通用的硬件 ID 有效,英特尔试图在他们的 Pentium III 中提供一个带有处理器序列号的,但有 a large controversy over it,它已从后来的型号中删除,并且在后代中不存在。

    您可以读取特定的硬件 ID,但没有标准化的方法可以读取。有关一些可能的选择,请参阅链接问题“What's a good way to uniquely identify a computer?”。

    当我需要这样做时,我会选择使用 windows 序列号,这对于每台机器来说应该是唯一的,即使对于克隆机器也是如此(由于它在 sysprep 过程中发生变化),除非它们违反了 Microsoft 的许可也可以在没有系统准备的情况下进行克隆。

    这可以通过 WMI 检索

    var s = new ManagementObjectSearcher("SELECT SerialNumber FROM Win32_OperatingSystem");
    var obj = s.Get().Cast<ManagementObject>().First();
    var serial = obj["SerialNumber"].ToString();
    

    【讨论】:

    • Windows 许可证可能不是唯一的,某些 Windows 许可证类型最多可以激活 3 台不同的计算机。
    • 这 3 台计算机的序列号会有所不同。序列号不是许可证密钥。
    • 从 Windows 10 开始,序列号可以更改,例如功能更新后
    猜你喜欢
    • 1970-01-01
    • 2012-02-20
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 2017-01-02
    • 2011-04-05
    • 2011-02-19
    • 1970-01-01
    相关资源
    最近更新 更多