我有一个应用程序想要通过要求用户注册来保护它。我还想确保它们不能安装在两台以上的机器上。为此,我需要知道在哪里可以找到唯一的硬件ID号,并在注册码中使用它。我所需要知道的就是如何使用代码获得这个数字。
发布于 2012-06-10 02:58:19
正如其他人所指出的那样,没有唯一的硬件ID这回事。在你之前来过的其他人已经尝试过使用各种东西(例如主板序列号、CPU序列号、硬盘序列号、MAC地址)或这些东西的组合,但它们都以自己的方式存在问题。序列号并不总是由所有驱动程序返回,即使它们返回了序列号,如果硬件升级或更换,序列号也很容易更改。此外,序列号在技术上可以由不同的供应商重复,尤其是在虚拟机上。MAC地址是有问题的,因为通常有多个,而且它们经常变化,特别是对于VPN,MAC地址经常被使用相同VPN软件的多台机器重复。您可以使用Windows安装序列号,但此序列号也可以重复,并随操作系统升级而更改。简单的答案是,在可能的情况下,不要这么做。如果你必须这样做,最好有一种方法,通过在硬盘上的某个地方写入加密的GUID,以编程方式标记安装了软件的每台计算机,并为支持人员提供一种简单的机制,以便随意重新标记任何计算机。
https://stackoverflow.com/questions/10962743
复制相似问题