我想以 30 天的评估版本分发我的软件(.net windows 应用程序),无论系统时间如何。
我不想使用互联网来获取时间,因为软件将在没有互联网的机器上运行。
谁能建议我如何在不使用系统时间和互联网的情况下分发我的软件?
也可以限制可以安装的计算机数量吗?
最佳答案
如果没有外部支持,这是 不可能 .
规避用户只需将您的软件安装在虚拟机中,该虚拟机配置为写时复制模式(因此 VM 中的所有更改都转到单独的磁盘镜像),并且在 VM 每次启动时,VM 系统时钟将是设置为特定日期。此 VM 镜像可以传输到任意数量的计算机,并且 VM 系统时钟将始终从同一日期开始。此外,对操作系统的任何运行时影响,例如您要安装的运行时计数器,都会在 VM 的每次新启动时重置。
有效限制软件使用的唯一方法是将其绑定(bind)到某些外部数据源。要么通过互联网,要么通过带有自己时钟的硬件加密狗一起发货;该加密狗也可以是一些小型网络设备,发放许可证,因此单个加密狗可以许可多台计算机。
但是,您不能仅使用软件来做到这一点。
关于.net - 分发任何软件评估版的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5368069/