以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于注册码的问题?有没有相关教程  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=125772)

--  作者:静听枫雨
--  发布时间:2018/10/6 18:53:00
--  [求助]关于注册码的问题?有没有相关教程
如何限制注册码的有效期呢?比方,用户A,我给他们注册码 10天 注册后,只能用 10天。
[此贴子已经被作者于2018/10/6 18:57:53编辑过]

--  作者:有点蓝
--  发布时间:2018/10/7 9:13:00
--  
参考:http://www.foxtable.com/webhelp/scr/1545.htm
--  作者:静听枫雨
--  发布时间:2018/10/7 18:31:00
--  
这个是 使用次数限制, 我想 按使用时间来限制呢,
--  作者:有点甜
--  发布时间:2018/10/8 9:52:00
--  
以下是引用静听枫雨在2018/10/7 18:31:00的发言:
这个是 使用次数限制, 我想 按使用时间来限制呢,

 

第一次打开的时候,记录那天的日期。

 

以后每次打开项目的时候,读取保存的日期,和今天的日期相减,即可。


--  作者:静听枫雨
--  发布时间:2018/10/8 15:10:00
--  
明白道理,就是还是写不出来图片点击可在新窗口打开查看
--  作者:有点甜
--  发布时间:2018/10/8 15:17:00
--  

参考代码

 

Dim d As Date = GetConfigValue("date",Date.Today)
Dim Code As String = GetConfigValue("Register" & ComputerId,"")
Dim n = (Date.Today - d).Totaldays+1
Dim Ok As Boolean
If Code > "" AndAlso DecryptText(Code,"abc","abc") = ComputerId Then \'如果注册码正确
    OK = True
Else
    If n > 30 Then
        Forms("注册").Open()
        Code = GetConfigValue("Register" & ComputerId,"")
        If Code > "" AndAlso DecryptText(Code,"abc","abc") = ComputerId Then \'如果注册码正确
            OK = True
        End If
    End If
    If n > 60 AndAlso Ok = False Then
        Messagebox.Show("您正在使用的产品已经超出试用次数!")
        Syscmd.Project.Exit()
    End If
End If
If n <= 1 Then
    SaveConfigValue("date",Date.Today)
End If


--  作者:静听枫雨
--  发布时间:2018/10/8 15:23:00
--  
注册窗口,用写日期
--  作者:有点甜
--  发布时间:2018/10/8 15:28:00
--  
以下是引用静听枫雨在2018/10/8 15:23:00的发言:
注册窗口,用写日期

 

你可以把机器和日期组合在一起合成比如  123456abcdefg|2019-01-02

 

然后加密,生成激活码。激活码发过去给对方注册。

 

你打开项目的时候,解密激活码,获取日期信息,对比今天是否超过了2019-01-02,如果超过了,就不能打开。


--  作者:静听枫雨
--  发布时间:2018/10/8 15:40:00
--  
哎,想系统学习一下。不知道有没有老师带~
--  作者:有点甜
--  发布时间:2018/10/8 15:44:00
--  

看懂这个例子了没有?

 

http://www.foxtable.com/webhelp/scr/1545.htm

 

在看懂的基础上微调一下代码即可的。

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=89665&skin=0