简单加密防复制功能-丘苏洲
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access开发平台


简单加密防复制功能

发表时间:2018/9/20 23:02:12 评论(1) 浏览(5588)  评论 | 加入收藏 | 复制
   
摘 要:这是本人使用Access快速开发平台开发软件时,用到的一个简单加密防止自已的劳动成果被盗用的方法,测试的运行环境为:WIN7,OFFICE2007。
正 文:

一、开发思路:

获取计算机硬件信息加密后保存到参数表。

程序每次运行都获取当前计算机的硬件信息,加密后和参数表进行比对。

不匹配即显示注册窗体,不运行主程序。

匹配即运行主程序。

禁用Soft_Register》窗体的右键菜单。


二、实现方法:

在 SysFrmLogin 窗体增加以下代码:代码中的PWkey值为自已的加密匙。需要自行修改。


Private Sub Form_Load()
    If GetParameter("ComputerID") <> des(computerID(), "PWkey", doEncryption) Then
        DoCmd.OpenForm "Soft_Register", acNormal
    Else
        Dim strFormName As String: strFormName = Me.Name
        DoCmd.Close acForm, strFormName, acSaveNo
        OpenRDPForm strFormName
    End If
End Sub

复制增加《Soft_Register》窗体到自已的程序中。代码中的PWkey值为自已的加密匙。需要自行修改。


Private Sub Form_Close()
    If GetParameter("ComputerID") = des(computerID(), "PWkey", doEncryption) Then
        MsgBox "注册激活成功!请重新打开软件。"
      Else
        MsgBox "注册激活失败!请重新打开软件进行注册激活使用。"
    End If
End Sub


Private Sub Form_Load()
    Me.ShortcutMenu = False
    Me.registerID = GetParameter("ComputerID")
    Me.Computer = computerID()
End Sub

Private Sub getRegister_Click()
    Me.registerID = des(Me.Computer, "PWkey", doEncryption)
End Sub

Private Sub quit_Click()
    Me.ShortcutMenu = True
    DoCmd.quit acQuitSaveNone
End Sub

Private Sub Register_Click()
    If des(Me.registerID, "PWkey", doDecryption) = Me.Computer Then      
        DoCmd.SetWarnings False
        Dim strSQL
        If GetParameter("ComputerID") <> des(computerID(), "PWkey", doEncryption) Then
            strSQL = "update [SysLocalParameters] set [Value]='" & des(computerID(), "PWkey", doEncryption) & "' where [ParameterName]='ComputerID'"
            DoCmd.RunSQL strSQL
        End If
        MsgBox "注册成功!"
        blExit = True
        Call LogoutRDP
    Else
        MsgBox "激活码有误,请重新录入!"
        Me.Register.SetFocus
    End If   
End Sub

Private Sub WriteRegister_Click()
    DoCmd.SetWarnings False
    Dim strSQL
    strSQL = "update [SysLocalParameters] set [Value]='' where [ParameterName]='ComputerID'"
    DoCmd.RunSQL strSQL
    Me.registerID = ""
End Sub



三、示例下载:

下载附件解压后,打开Main主程序文件就可以运行。

附    件:(UMVsoftRDP_V2.4.1.412_32bit

点击下载此附件


Access软件网交流QQ群(群号:198465573)
 
 相关文章
禁止复制窗体数据  【纵云梯  2012/2/9】
【Access示例】对密码进行加密  【缪炜  2013/11/8】
【Access示例】如何用代码给Access加密  【缪炜  2014/9/14】
ACCESS制作加密狗  【茼蒿  2015/1/8】
手动给VBA代码加密方法  【周芳  2015/3/7】
Access开发平台--VBA加密后登陆提示输入密码框现象如何解决  【杜超  2015/7/30】
常见问答
技术分类
相关资源
文章搜索
关于作者

丘苏洲

文章分类

文章存档

友情链接