我正在使用我的软件的硬盘ID来检查真实用户是否正在使用该软件。 对于IDE类型的硬盘,我使用GetIdeSerialNumber程序获取id。
但是在SATA驱动器的情况下,它将id作为空白。
然后在SATA驱动器的情况下,我使用卷ID作为唯一ID。
但在系统格式化时,卷ID会发生变化
现在我想知道我正在使用哪个硬盘,以及如何在delphi 7中获取SATA硬盘的硬盘ID?
编辑:根据客户规格的软件需要锁定硬件,相关ID是
客户已经知道如果系统被更改,认证层将失败, 但我们已经开始将软件锁定到硬件......
所以我想知道如何获取SATA ID
答案 0 :(得分:3)
WMI是检索硬盘序列号的最佳选择,但不支持旧版本的Windows(95和98)。
我建议您使用volume serial number。这是硬件无关的。它将与Windows的安装相关联,而不是物理硬盘驱动器。这很有意义,应该足够好。
请注意,如果用户重新安装Windows或其他一些还原情况,则必须重新激活,因此您需要留出一些余地。这是最棘手的部分。当然,这就是使用多个ID的原因。您可以允许一个或多个更改,而不是全部更改,而无需重新激活。