国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Visual Basic > 正文

用VB為軟件增加注冊功能

2024-09-07 17:32:50
字體:
來源:轉載
供稿:網友

  在尊重軟件著作權的時代,電子注冊版軟件的應用也越來越廣。它的出現使用戶對程序中未受限制的功能有了一定了解,起到了推廣和傳播作用,同時也很好地保護了制作人的切身利益。那么,我們如何制作一個電子注冊版軟件呢?

  經過摸索,筆者利用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

  至此,我們可以運行一下程序。你會發現我們已經簡單地實現了利用硬盤序列號制作電子注冊版軟件的功能。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 探索| 延川县| 剑河县| 云阳县| 华亭县| 锦屏县| 武威市| 临邑县| 临沧市| 大足县| 昂仁县| 榆林市| 云林县| 葵青区| 横山县| 阳泉市| 渑池县| 武宁县| 惠水县| 长海县| 安宁市| 长子县| 岳西县| 子洲县| 久治县| 六安市| 高要市| 阿坝县| 乡宁县| 沭阳县| 湖口县| 社会| 泰州市| 吉水县| 石屏县| 新丰县| 三河市| 屏南县| 武鸣县| 永寿县| 神木县|