日期:2008-12-16  浏览次数:20579 次

-为保证文章完整性,谢绝对某篇而非全部手记的转载(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字段添加到表中

<