VB怎么限制软件使用期限
可以把这段代码放在模块中,从模块启动:Sub main()Dim MySettings As StringMySettings = GetSetting("MyApp", "Startup", "FirstRun") '读取注册表If MySettings = "" ThenSaveSetting "MyApp", "Startup", "FirstRun", Date '首次运行保存注册表MySettings = DateEnd If'DeleteSetting "MyApp", "Startup" '删除注册表If DateDiff("d", CDate(MySettings), Now) >30 Then '超过30天MsgBox "软件试用过期,请购买正式版"Exit SubElseMsgBox "软件已经使用" & DateDiff("d", CDate(MySettings), Now) & "天"Form1.Show '开始使用End IfEnd Sub
软件是如何限制使用期限的!
建立一个注册表快照运行RepSnap后,点击菜单“文件” “新建”,在弹出的保存快照对话框中选择快照项目为“仅注册表”,并输入快照说明文字以便后面区分(例如输入:使用50次)然后点击“确定”按纽,就可以开始扫描并保存注册表内容了,扫描完毕后,点击菜单“文件” “保存”命令,将当前快照保存。
建立第二个快照运行你要破解的那个软件,可以运行多次,当软件提示可用次数发生变化后,再用上面同样的方法,保存一次注册表快照。
比较注册表快照这一步很重要,现在需要对比两个注册表快照,找出注册表中的不同之处,这可是破解使用次数限制的关键。
当然我们不会去手工对照哈~可以直接使用RepSnap的快照比较功能。
点击菜单“文件” “比较”命令打开快照比较对话框。
RepSnap会自动将最近两次保存的快照调如进行比较。
在报告选项中可以选择显示修改过得键名,也可以显示键名和键值,想得到详细的比较内容的话就选择第二项“显示修改过得键名和键值”吧接下来,点击“确定”按纽后,即可开始比较两个注册表快照内容的不同之处,完成后显示详细报告信息。
找到次数记录从报告中可以看到注册表中有11个键值发生了变化。
经过仔细的查看,发现一处重要的注册表更改项目其中“49”和“48”不正是软件剩余的使用次数。
确定次数记录位置在RepSnap中点击工具栏上的“加载注册表编辑器”按钮,打开系统中的注册表编辑器,展开注册目“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IE4\Setup\”找到键值“KEYFSTIMES”。
先关闭我们要修改那个软件,然后再次运行,返回到注册表中,刷新刚才的键值,可以看到该键值也减少了1,因此可以肯定此处就是记录软件剩余次数的关键了。
修改注册表,先尝试修改注册表键值“KEYFSTIMES”,改为最初的50次,如果正确的话在重启就可以了。
...
我用VB编写了一款软件。
但是我想求一款可以限制使用次数或者使用...
思路是:用VB生成了一个记数器文件,为具迷惑性,后缀为.ocx代码: Open "C:\windows\system32\jishuqi.OCX" For Input As #1 '生成空文件,如果文件存在,也没关系Close #1每次打开你的软件时,读取这个文件并开始记录已用次数:Open "C:\windows\system32\jishuqi.OCX" For Binary As #1 ''从文本读入已用次数YiYongCiShu = Val(Input(LOF(1), 1))Close #1YiYongCiShu = YiYongCiShu + 1再把刚才的计数结果写入到文件中:Open "C:\windows\system32\jishuqi.OCX" For Output As #1 '记录次数Print #1, YiYongCiShuClose #1设定一个初始值,比如100,并进行比较,然后判断做出决定:If YiYongCiShu >100 Then '使用期限到了,所有功能全部被限制使用,三个"分解"按钮将不可用.i2 = MsgBox("您的试用次数已到,请注册!", 3 + 64, "注册提示")SSTab1.Visible = False '试用期过后,不可用If i2 = 6 Then Call zhuce '调用注册过程Elsei = MsgBox("您还可使用" & 100 - YiYongCiShu & "次, 是否注册?", vbYesNo + vbInformation, "提示")If i = vbYes Then Call zhuce '"是"即要注End If如果想要求用户注册,可用机器码,比如硬盘序列号什么的:Private Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize _As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As LongJiqima = Abs(Val(diksvolume)) '这就是C盘序列号,加Abs防止出现负数当然也可以设定实时时间(这个不好,用户可以修改自己的系统时间)
十大D版软件,你用了几个?第一位:Windows操作系统如果你使
定义两个变量,安装时间、过期时间 取一个唯一性的值(例如硬盘ID或者其他),用这个值加密时间变量(加密算法是最重要的)只允许 安装时间--过期时间之间的时间运行。
每次运行后,如果当前时间小于安装时间或者当前时间大于过期时间,退出,否则更新安装时间为当前时间。
怎样限制安卓系统安装软件,带密码的,使用密码才能安装!?
Private Sub Command1_Click()Dim DayS As String, nDate As String, nNow As StringnDate = "2008-11-1"nNow = Format(Now, "yyyy-mm-dd")DayS = DateDiff("d", nNow, nDate) '当月的天数If DayS >0 ThenMsgBox "软件使用剩余时间:" & DayS & " 天。
", vbInformationElseMsgBox "软件使用时间已过期!", vbInformationEnd IfEnd Sub
转载请注明出处51数据库 » vb限制操作系统安装软件
少年玩心吗m