找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 3108|回复: 0

产品加锁(时间掣)技术

[复制链接]

1214

主题

352

回帖

11

精华

管理员

菜鸟

积分
93755

贡献奖关注奖人气王精英奖乐于助人勋章

发表于 2010-5-8 20:29:19 | 显示全部楼层 |阅读模式
产品加锁(时间掣)技术
    一般软件都有封面(FM)或主菜单界面(MAIN),为了防止非法使用可在其中加入一个逻辑锁或时间掣。如下面语句即是一个时间锁: year(date())=2000.and.(month(date())=10.and.day(date())=6),表示到了2000年的10月6日,即发生事件:要求输入密码(这里是888888),否则不准进入系统。这里的时间和密码可自行设定。现假设在FM或MAIN表单,里面有一个名为“进入系统” 的命令按钮(Command1),是进入软件系统内部的“必经之路”,我们可对此按钮加上逻辑锁或时间掣,使它不可用,即使其Enabled属性为Fales,只有输入正确密码才变为True, 为此我们可在FM或MAIN表单的ACTIVATE事件中加入三个控件:文本框(Text1)、标签(Label1)、命令按钮(Command2),首先使它们在平时都不可见,但一旦条件符合刚显示出来。为此可使它们的Visible属性为 False, 然后在封面或主菜单表单的Activate事件中加入如下代码:
if year(date())=1999.or.(month(date())=
2.and.day(date())=16)
thisform.label1.visible=.t.
thisform.text1.visible=.t.
thisform.command1.enabled=.f.     
  &&屏蔽“进入系统”按钮
thisform.command2.visible=.t.
messagebox('请输入产品许可证号,
以维护您的权益!','产品系列号核对')
endif
然后在“确定”按钮(Command2)
的Click事件中加入如下代码:
if alltrim(thisform.text1.value)<  >'888888'
messagebox('系列号不正确,请找软件开发人员联系!
','你不是本软件合法用户')
thisform.label1.caption="系列号不正确,请核对!"
else
thisform.label1.caption='系列号正确!
您是合法用户,欢迎进入系统'
thisform.command1.enabled=.t.
&&密码校验正确,激活“进入系统”按钮
endif
    这样一旦到了规定的时间(这里是1999年或每年的10月6日)或符合设定的条件,系统就会向用户要产品系列号,否则拒绝进入系统。因为这个锁平时不可见,很具隐蔽性,所以又可称为“暗锁”。
【VB】QQ群:1422505加的请打上VB好友
【易语言】QQ群:9531809  或 177048
【FOXPRO】QQ群:6580324  或 33659603
【C/C++/VC】QQ群:3777552
【NiceBasic】QQ群:3703755
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表