Private Sub Form_Load()
Dim RemainDay As Date, s As String
s = GetSetting("MyApp", "set", "day", "")
If s = "" Then SaveSetting "MyApp", "set", "day", Date: s = Date
RemainDay = DateAdd("d", 30, CDate(s))
If DateDiff("d", Now, RemainDay) <= 0 Then
MsgBox "试用期已过,请注册"
End
End If
MsgBox "现在剩下:" & DateDiff("d", Now, RemainDay) & "试用天数,好好珍惜!"
End Sub
目前这个代码可以实现试用期,但如果把电脑的时间往前调的话,程序就又可以使用了,怎样完善使这个代码没有漏洞呢?
这个vb程序试用期的代码怎样完善?
答案:4 悬赏:30 手机版
解决时间 2021-02-10 11:51
- 提问者网友:咪咪
- 2021-02-10 03:10
最佳答案
- 五星知识达人网友:蓝房子
- 2021-02-10 03:23
我是这样解决这个问题的, 因为我的程序是一个网络程序. 所以一定会联网
直接从百度服务器上获取GMT时间, 然后转换, 不用本地时间, 就不怕改了
直接从百度服务器上获取GMT时间, 然后转换, 不用本地时间, 就不怕改了
全部回答
- 1楼网友:西风乍起
- 2021-02-10 06:34
俺做的管理信息系统进行数据统计的话必须用到按时间统计,月报表什么的,所以不存在这个问题,如果改了时间就无法统计了。
俺不知道你做哪类软件,不那么值钱的话改了就改了,加密都不管用。
- 2楼网友:神也偏爱
- 2021-02-10 04:59
我曾经做过的脚本就是 注册码(包含注册时间,有效期) 验证的时候获取网络时间 然后判断是否过期通过一个服务器 或者 插件来获取网络时间
- 3楼网友:琴狂剑也妄
- 2021-02-10 04:38
你可以另外再写入两个键值:
1、一个键值记载软件可用和不可用。一旦软件到期,这个键值将记下一个到期的信息。每次开机检测到这个信息软件退出运行。
2、另一个键值记载最后一次使用的日期。每次开机检测到软件不到期后,再将当前日期与这个键值比较,如果当前日期比键值记载的日期还早,就记入软件已经到期的信息,软件退出运行。否则,重新记下当前的日期。
虽然这样还不能完全杜绝修改日期(比如使用软件的人每一次使用都先将日期改为某个可用日期固定不变),但对于一般人还是能起到作用的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯