我需要一个只能从特定 USB 闪存驱动器运行的应用程序。我用 WMI Win32_Diskdrive 类和 PNPdeviceID 属性做了一些测试。使用此数据将应用程序注册到许可证服务器(Web 服务)是一个很好的主意,但我正在寻找第二种方法来加强此方法,以使该过程更难被破坏。
我正在考虑在驱动器中创建第二个隐藏的小分区,并将 PNPdeviceID 或其他信息获得的序列作为名称定位在其中。接受任何其他想法、方法或建议。
提前致谢。
编辑:我已经知道 USB 闪存驱动器的唯一 ID,应用程序可以检查 Interfacetype 属性是否为“USB”。我在 Web 服务支持的许可证管理器中使用 PNPDeviceID 的哈希值注册应用程序。我正在寻找另一种验证方法。
最佳答案
您可以检查卷序列号,这将捕获到新格式化卷的随意复制,但它不会检测到完整字节的卷复制。
To protect software by accessing harddisk serial no
Any faster method to get Volume Serial number?
关于c# - 如何限制应用程序只能从已知的 U 盘运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1303026/