首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网络编程-> JSP教程
开发手记(六)——共享软件注册程序编写实例(2)-.NET教程,评论及其它
作者:网友供稿 点击:45
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 

-为保证文章完整性,谢绝对某篇而非全部手记的转载(mi6236)

option explicit

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 long 等到某一磁盘分区的信息

‘************注册窗体*****************

’运用另一个***.mdb来控制软件是否超出试用期

private sub form_load()

 根据c盘序列号得到原id

  dim driver, volname, fsys as string

  dim volnumber, mcm, fsf as long

  driver = "c:\"

  dim res as long

  dim localid as long

  res = getvolumeinformation(driver, volname, 127, volnumber, mcm, fsf, fsys, 127)

  将c盘序列号加密并显示在注册窗体的本机码中

  localid = *****volnumber***** ‘加密算法

  text1.text = localid‘显示经加密后的本机码

end sub

private sub cancel_click()

        on error goto error

        检测系统文件夹是否有***.mdb文件,如果没有,则是系统第一次安装,建立此数据库文件

        if dir(spath & "\***.**") = "" then

            dim ws as workspace

            dim db as database

            dim tdf as tabledef

            dim fld as field

            dim rst as recordset

            dbengine对象相当于jet数据库引擎,不需要创建该对象,createworkspace创建一个工作区对象

            workspace对象为用户定义一个会话,通过与之关联的用户名和口令建立一个安全级别。当不需要安全级别时可使用缺省的工作区dbengine.workspace(0)

            set ws = dbengine.workspaces(0)

            创建一个空的数据库文件,dblanggeneral参数用来确定数据驱动程序支持的参数

            set db = ws.createdatabase(spath & "\***.mdb", dblanggeneral)

            创建一张新表

            set tdf = db.createtabledef("***")

            创建first_time字段

            set fld = tdf.createfield("first_time", dbdate, 8)

            tdf.fields.append fld 把first_time字段添加到表中

            创建last_time字段

            set fld = tdf.createfield("last_time", dbdate, 8)

            tdf.fields.append fld 把last_time字段添加到表中

            创建times字段

            set fld = tdf.createfield("times", dbinteger, 2)

            tdf.fields.append fld 把times字段添加到表中

            db.tabledefs.append tdf 将***表添加到***.mdb中

            db.close 关闭***.mdb

            set db = ws.opendatabase(spath & "\***.mdb") 以可读写方式打开***.mdb

            set rst = db.openrecordset("***") 打开一个记录集

            with rst

                .addnew 向记录集增加一条新记录

                写入一条记录

                .fields("first_time") = date

                .fields("last_time") = date

                .fields("times") = 1

                .update 将记录写入数据库

            end with

            rst.close

            db.close 关闭***.mdb

            ws.close

           **********更改系统时间,来实现隐藏注册库的修改时间***************

………………………………………

…………………………………………

…………………………………………………

            dbencrypt.dbencrypt (spath & "\***.mdb") 数据库加密

            name spath & "\***.mdb" as spath & "\***.**"

            ********************将时间改会原来时间************************

            …………………………

…………………………

            msgbox "这是你首次启动本系统!你的试用期为30天,今天是第一天,谢谢使用!", vbokonly + vbinformation, "欢迎!"

            ***.show 启动主窗体

        else 系统有***.mdb文件,则不是第一次运行,就不用建立数据库文件了.

            dim ws2 as workspace

            dim db2 as database

            dim rst2 as recordset

            dim num as integer

            dbencrypt.dbexplain (spath & "\***.**")

            set ws2 = workspaces(0)

            set db2 = ws2.opendatabase(spath & "\***.**")

            set rst2 = db2.openrecordset("***") 开始检测用户是否修改了系统日期

            rst2.movefirst

            if rst2.fields("last_time") > date or rst2.fields("times") > 100 then

               msgbox "对不起,你在本软件的试用期不可以修改系统日期,否则将取消您的系统试用权,如果你想继续使用本软件。请您恢复系统日期,谢谢合作!", vbokonly + vbinformation, "提示"

                end

            end if

            if date - rst2.fields("first_time") >= 30 then 设定试用期为30天

                msgbox vbcrlf & "你已经启动本系统" & rst2.fields("times") & "次,但已超过了软件30天的试用期。" & vbcrlf & vbcrlf & "如果您愿意继续使用本系统,请将“本机码”以打电话(***-********)" & vbcrlf & vbcrlf & "或发邮件(mi6236@tom.com)的形式与***联系来得到注册码!", vbokonly + vbinformation, "提示"

            else

                仍在试用期内

                num = rst2.fields("times")

                rst2.edit

                rst2.fields("last_time") = date

                rst2.fields("times") = num + 1

                rst2.update

                msgbox "这是你第" & rst2.fields("times") & "次使用本系统,你还有" & 30 - (date - rst2.fields("first_time")) & "天的试用期,祝你今天工件愉快!", vbokonly + vbinformation, "提示"

                ***.show 启动你的主窗体

            end if

           rst2.close

           db2.close

           ws2.close

    ***************更改系统时间,来实现隐藏注册库的修改时间***************

            ……………………………………

    *****************************************************************************

        dbencrypt.dbencrypt (spath & "\***.mi") 加密数据库

        name spath & "\***.**" as spath & "\***.**" 因在前面改动时间会影响库中的时间,故在这里做一下假改动来达到修改时间的目的。

    ********************将时间改会原来时间************************

           ………………………………………

    **************************************************************

     end if

        unload register 关闭注册窗口

    exit sub

error:

    dbencrypt.saveerror "register-cancel_click"

end sub

private sub enter_click()

on error goto saveerr:

进行注册,验证注册id

  dim ws as workspace

  dim db as database

  dim tdf as tabledef

  dim rst as recordset

  dim fld as field

  dim driver, volname, fsys as string

  dim volnumber, mcm, fsf as long

  driver = "c:\"

  dim res as long

  res = getvolumeinformation(driver, volname, 127, volnumber, mcm, fsf, fsys, 127) 得到硬盘序列号

  dim tid as long

  dim regid as string

  tid = val(text1.text)

  regid = trim(text2.text)

  if regid = ******************* then 判断输入的密码是否同解密算法得到的密码一致

    ***********************更改系统时间,来实现隐藏注册库的修改时间***************

            ………………………………

    *****************************************************************************

    msgbox "恭喜您已经注册成功,欢迎使用水利工程投资控制与评审系统", vbokonly + vbinformation, "提示"

    *****将注册信息写入密码注册库*****

    dbencrypt.dbexplain (spath & "\***.**") 数据库解密

    set ws = dbengine.workspaces(0)

    set db = ws.opendatabase(spath & "\***.**")

    set rst = db.openrecordset("***")

    rst.movefirst

    rst.edit

    rst.fields("***") = 1

    rst.update

    db.close

    dbencrypt.dbencrypt (spath & "\***.**") 数据库加密

    ********************将时间改会原来时间************************

             ………………………

    **************************************************************

    unload ***

    ***.show 进入登录窗体

  else

    msgbox vbcr & "注册码不正确,请重新输入。" & vbcrlf & vblf & "如果您想试用本软件可单击“取消”按钮", vbokonly + vbinformation, "提示"

    exit sub

  end if

  exit sub

saveerr:

    dbencrypt.saveerror "register-enter_click"

end sub

(未完待续)

文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·利用 Java Web Start发布你用java程序-JSP教程,Java技巧及代码
·用正则表达式得到网页上的链接-.NET教程,评论及其它
·MSMQ,Enterprise Service, DotNet Remoting,Web Service 的优缺点-.NET教程,Web Service开发
·用vb编一个计算器,需要用到数组,看看下面的代码,欢迎来找碴!-.NET教程,VB.Net语言
·jsp页面中的下载功能实现-JSP教程,Jsp/Servlet
·利用Java 创建和读取Excel文档-JSP教程,Java技巧及代码
·JSP语法(8)——<jsp:forward>-JSP教程,Jsp/Servlet
·Hibernate 配置!-JSP教程,资料/其它
·java、J2EE基础问题汇总-JSP教程,Java技巧及代码
·Java手机程序设计入门 电子书开放下载(转自CSDN)-JSP教程,J2ME开发
最新文章
·photoshop制作重彩风格非主流照片效果_photoshop教程
·google补充材料没消失,内链优化很重要_seo网站优化
·个人网站建设到底怎样赚钱_网赚技巧
·英文垃圾站全功略ip日100月赚50刀_网赚技巧
·清客讲网赚思路_网赚技巧
·windear与渡虎谷密谋_站长访谈
·口碑网ceo李治国专访:独特的平衡之道_站长访谈
·密密麻麻圈网邵晨:我从“互动”中赚钱_站长访谈
·蔡文胜:站长的乐趣是享受建站的过程_站长访谈
·“鹰”之路—访著名linux内核程序员大鹰_站长访谈
相关主题
  • 开发手记(九)——在文件菜单中记录最近使用过的文件-.NET教程,组件控件开发
  • 开发手记(八)——ActiveBar控件中的利器(1)-.NET教程,组件控件开发
  • 开发手记(七)——实现图标首窗体的启动滞留-.NET教程,评论及其它
  • 开发手记(六)——共享软件注册程序编写实例(3)-.NET教程,评论及其它
  • 开发手记(六)——共享软件注册程序编写实例(1)-.NET教程,评论及其它
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭