您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> VB >> 辅导 >> 正文    
  用VB给商品软件加密的方法 【注册男护士专用博客】          

用VB给商品软件加密的方法

www.nanhushi.com     佚名   不详 

  近几年来,笔者参与了几个商品软件的开发设计,其中如何加密软件确是个值得研究的课题,而对于小软件来说,采用加密狗进行加密是很不经济的。为此,笔者想出一妙法,在程序里完成对软件加密,这样既方便又经济,现介绍如下,望能与大家一起分享。

---- 设计原理:

---- 软件加密的目的是为了防止盗用者拷贝软件,一般拷贝软件时,只会拷贝程序所在的目录的内容,根本不会想到其他目录里还会有与程序有关的文件,特别是文件放在WINDOWSSYSTEM目录里,更是无从下手。这样,我们设计了两个文件,一明一暗,明的放在程序所在的目录,命名为mscredit.ini,其内容为:

---- @-version=2.0-1999-copyright-@

---- 安装软件时,应先删除mscredit.ini左边的“@”,程序自动创建c:windowssystemdbcredit.ini文件,并在mscredit.ini里再写入左边的“@”符号,以后每次使用软件时,检查隐藏的c:windowssystemdbcredit.ini文件是否存在,只有此文件存在时软件才能正常运行。此设计关键在于,这一明一暗两个文件同时存在,程序才能正常运行。

---- 主程序

Private Sub Form_Load()
Dim kk, ms As String, vt As Integer
’若mscredit.ini因误操作删除,则软件不能正常运行
If Dir(App.Path & "mscredit.ini") = "" Then
   kk = MsgBox("本软件已不能正常运行,
请检查软件的合法性!", vbInformation, "    提示")
  Exit Sub
End If
’若mscredit.ini因误操作删除其内容,
则软件不能正常运行
Open App.Path & "mscredit.ini" For Input As #1
Input #1, ms
Close #1
ms = Trim(ms)
If ms = "" Then
   kk = MsgBox("本软件已不能正常运行,
请检查软件的合法性!", vbInformation, "提示")
   Exit Sub
End If
If Left(ms, 1) < > "@" Then
’安装使用本软件,自动创建dbcredit.ini文件,
并在mscredit.ini里写入“@”符号
   vt = write_sys_init("CopyRight", "Version", "2.0")
   Open App.Path & "mscredit.ini" For Output As #1
   ms = "@" & ms
   Print #1, ms
   Close #1
Else
’使用本软件,若dbcredit.ini因误操作
删除其内容,则软件不能正常运行
   If Dir("c:windowssystemdbcredit.ini") = "" Then
      kk = MsgBox("本软件已不能正常运行,
请检查软件的合法性!", vbInformation, "提示")
      On Error Resume Next
      Kill App.EXEName
      On Error GoTo 0
      Exit Sub
   End If
End If
End Sub

    调用函数
Public Function write_sys_init
(gs As String, ss As String, sval As String)
As Integer
Dim retv as String
write_sys_init = 0
On Error Resume Next
retv=OSWritePrivateProfileString
(gs,ss,sval,"c:windowssystemmscredit.ini")
If Err Then
   Err = 0
   write_sys_ini = -1
End If
On Error GoTo 0
End Function

---- 本程序在VB5.0、WIN95下调试通过。

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目

      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)                            【进男护士社区逛逛】
    姓 名:
    * 游客填写  ·注册用户 ·忘记密码
    主 页:

    评 分:
    1分 2分 3分 4分 5分
    评论内容:
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。