问题描述
- VC6/MFC 关于软件过期问题
- 我是用VC6开发了个软件交付给公司但是只想让他们使用三个月,怎样设置?
很多软件都有这个功能,但是修改了系统时间就又可以用了,读取网络时间?
假如一直没网那不可以一直用了么?
解决方案
如果用户为了用你的软件而被迫让计算机时间固定在那个区间内,他用起来会很不爽的。他要真的这么用,那也没办法。你还可以动一些手脚,每次运行记录下最后运行时间。
下次运行,必须晚于这个时间。这样用户只能往后修改时间,不能往前修改。
解决方案二:
没有网可以这么做:用用户的手机号、支付宝实名帐户或者身份证作为验证条件,你计算一个包含截止时间的注册码。
注册码算法根据截止时间、用户信息和你的加密三部分组成。
用户软件离线可以验证。
解决方案三:
这样不但可以防止用户修改时间,也能防止用户格式化硬盘、甚至更换计算机继续使用你的软件。
解决方案四:
时间放在server端做,通过server来验证
解决方案五:
可以悄悄在不开放的数据库内设置一个起始日期(initdate)和一个截止日期(finaldate),每次用户打开软件使用后更新起始日期为当前日期(curdate)。
if(curdate>=initdate && curdate<finaldate)
可正常使用;initdate = curdate;
else if(curdate==finaldate)
软件到期,不可使用;initdate = curdate;
else
软件到期,不可使用;
解决方案六:
现在软件如果要做有效期,一般都是联网了,不联网的机器现在也没啥用处了
解决方案七:
没什么高端的,那种短信验证码有专门的提供商,你可以集成他们的api。每条也就几分钱的收费。
身份证上传识别也可以有开源的库实现。
因此你可以做一个网站自助发放序列号。
你可以把序列号发到手机上。这样用户不会为了用你的软件买很多手机卡吧。
解决方案八:
关键还是看你的软件本身有没有价值。如果你的软件本身就是没有什么价值的,那没必要花这个力气了。