
在尊重软件著作权的时代,电子注册版软件的应用也越来越广。它的出现使用户对程序中未受限制的功能有了一定了解,起到了推广和传播作用,同时也很好地保护了制作人的切身利益。那么,我们如何制作一个电子注册版软件呢?
经过摸索,笔者利用VB也简单地制作了一个电子注册版软件。
设计原理
利用API中的“GetVolumeInformation”函数提取使用者机器的硬盘序列号为特征码,注册时提交此码,经过软件著作权人加以运算,给出注册码,最后软件使用人输入注册码完成整个注册过程(为使说明简单,本例中以特征码减101做为注册码)。
新建一模块文件
新建一模块文件,并将如下声明的语句和常量添加到Module1.Bas模块中:
编程时需注意的是要将声明语句写在同一行中。
窗体设置
在Form1上添加2个文本框,Name属性分别设置为Text1、Text2;再添加1个按钮,Name属性设置为Command1。
添加代码
将如下程序代码添加到Form1的Form1_Load事件中:
将如下程序代码添加到Command1的Command1_Click事件中:
至此,我们可以运行一下程序。你会发现我们已经简单地实现了利用硬盘序列号制作电子注册版软件的功能。
经过摸索,笔者利用VB也简单地制作了一个电子注册版软件。
设计原理
利用API中的“GetVolumeInformation”函数提取使用者机器的硬盘序列号为特征码,注册时提交此码,经过软件著作权人加以运算,给出注册码,最后软件使用人输入注册码完成整个注册过程(为使说明简单,本例中以特征码减101做为注册码)。
新建一模块文件
新建一模块文件,并将如下声明的语句和常量添加到Module1.Bas模块中:
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 Long
Global GetVal As Long 编程时需注意的是要将声明语句写在同一行中。
窗体设置
在Form1上添加2个文本框,Name属性分别设置为Text1、Text2;再添加1个按钮,Name属性设置为Command1。
添加代码
将如下程序代码添加到Form1的Form1_Load事件中:
Private Sub Form_Load()
Dim TempStr1 As String * 256
Dim TempStr2 As String * 256
Dim TempLon1 As Long
Dim TempLon2 As Long
………
‘读取是否注册的信息,如何控制这里不再说明
………
Call GetVolumeInformation("C:/", TempStr1, 256, GetVal, TempLon1, TempLon2, TempStr2, 256)
Text1.Text = GetVal ‘提取本机C盘的序列号至文本框一
End Sub
将如下程序代码添加到Command1的Command1_Click事件中:
Private Sub Command1_Click()
If Text2 〈〉 CStr(GetVal) Then
MsgBox "注册码不正确,请认真检查输入是否正确。"
Else
MsgBox "你已经成功注册,请重新启动本软件。"
………
(将正确注册的信息写入,使软件功能以后不受限制。具体方法依个人爱好进行设置。)
………
End If
End Sub 至此,我们可以运行一下程序。你会发现我们已经简单地实现了利用硬盘序列号制作电子注册版软件的功能。
推荐阅讯
- 用VB判断网页文件是否在IE缓存中
- Visual baisc中Byval与Byref的区别
- VB中利用ccrpHotKey控件设置热键
- VB6.0中Dir()函数的使用方法
- 用VB6.0取得系统信息技巧
- VB中创建可以输出函数的DLL
- 用VB备份和恢复SQL Server数据库的方法
- 利用VB学做“黑客”程序
- 给用和学VB的朋友打打气,同时分享创业故事
- VB6如何在托盘中写入应用程序图标
阅读排行
- 1.通过实例学VB—创建简单的个人通讯录
- 2.如何编写高质量的VB代码
- 3.在VB的ListView控件中动态加载记录
- 4.用VB备份和恢复SQL Server数据库的方法
- 5.利用VB学做“黑客”程序
- 6.掌握VB中的ADO数据对象编程
- 7.将程序加入启动组
- 8.VB程序中用ADO对象动态创建数据库和表
- 9.VB与Excel2000实现复杂报表打印
- 10.六天学会Visual Basic数据库编程
专题教程
- 大话G游 专题:手机病毒揭密
- ARP攻击防范与解决方案 路由故障处理手册
- Picasa中文版_Picasa教程 专题:清除流氓软件
- Firefox专题 seo搜索引擎优化专区
- 重装Windows必知的事情 装机之必备软件大行动
病毒专杀栏
