上一题下一题
跳转到
 
 
  世界如此多姿,发展如此迅速,窥一斑未必还能知全豹。但正如万花筒一样,每一个管窥都色彩斑斓。  
 
 
  知识通道 | 学习首页 | 教师首页 | PK首页 | 知识创造首页 | 企业首页 | 登录
 
本文对应知识领域
用VB为软件增加注册功能
作者:未知 申领版权
2010年11月14日 共有 1393 次访问 【添加到收藏夹】 【我要附加题目
受欢迎度:

    
    用VB为软件增加注册功能
    
    在尊重软件著作权的时代,电子注册版软件的应用也越来越广。它的出现使用户对程序中未受限制的功能有了一定了解,起到了推广和传播作用,同时也很好地保护了制作人的切身利益。那么,我们如何制作一个电子注册版软件呢?
    
    经过摸索,笔者利用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做定时断线程序
VisualBasic中的界面设计原则和编程技巧
VB6.0与Windows API 间的呼叫技巧
制作可以自动隐藏的弹出式菜单
ListBox中的字符串超长显示的解决方法
VB中的Unicode 和 Ansi 格式
优化程序显示速度
Visual Basic 产生渐层的 Form 背景
用VB实现客户——服务器(TCP/IP)
用VB制作注册软件的方法

题目筛选器
日期:
类型:
状态:
得分: <=
分类:
作者:
职业:
关键字:
搜索

 
 
 
  焦点事件
 
  知识体系
 
  职业列表
 
 
  最热文章
 
 
  最多引用文章
 
 
  最新文章
 
 
 
 
网站介绍 | 广告服务 | 招聘信息 | 保护隐私权 | 免责条款 | 法律顾问 | 意见反馈
版权所有 不得转载
沪ICP备 10203777 号 联系电话:021-54428255
  帮助提示    
《我的太学》是一种全新的应用,您在操作中遇到疑问或者问题,请拨打电话13564659895,15921448526。
《我的太学》