Foxtable(狐表)用户栏目专家坐堂 → 1月13日更新,新增注册模块设计功能。


  共有36208人关注过本帖平板打印复制链接

主题:1月13日更新,新增注册模块设计功能。

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
1月13日更新,新增注册模块设计功能。  发帖心情 Post By:2009/1/13 13:30:00 [只看该作者]

1月13日更新
1、新增注册系统设计功能
2、新提供一批和加密解密相关的函数,用于辅助设计注册系统。


设计自己的注册系统

如果你基于Foxtable设计了应用软件,而且希望能够发行并收取一定的注册费,那么就必须建立一套基于电脑硬件的软件注册系统。
设计这样的系统并不复杂,复杂的是如何获得电脑的硬件信息。

HardWareInfo类专门用于获得电脑的硬件信息,如何使用该类获得硬件信息,可以参考下面的代码:

If HardWareInfo.Ready = False '如果没有初始化
    HardWareInfo.Initialize '初始化HardWareInfo,提取硬件信息
End If

Output.Show(
"CPU信息")
With
HardWareInfo.CPU
    Output.Show(
"制造商:" & .Manufacturer)
    Output.Show(
"品名:" & .Name)
    Output.Show(
"型号:" & .Description)
    Output.Show(
"序列号:" & .ProcessorId)
End
With
Output.Show(Chr(
13) & Chr(10))
Output.Show(
"主板信息")
With
HardWareInfo.BaseBoard
    Output.Show(
"制造商:" & .Manufacturer)
    Output.Show(
"型号:" & .Product)
    Output.Show(
"序列号:" & .SerialNumber)
End
With
Output.Show(Chr(
13) & Chr(10))
Output.Show(
"硬盘信息")
With
HardWareInfo.Disk
    Output.Show(
"型号:" & .Model)
    Output.Show(
"序列号:" & .Signature)
End
With
Output.Show(Chr(
13) & Chr(10))
Output.Show(
"BIOS信息")
With
HardWareInfo.Bios
    Output.Show(
"厂商:" & .Manufacturer)
    Output.Show(
"序列号:" & .SerialNumber)
End
With

通常来说,不同的电脑,其CPU、主板、硬盘、Bios的序列号都是唯一的,我们可以据此生成软件的序列号和注册码。不过,也有特殊的情况,例如国内销售的电脑,大多数是没有办法获取CPU序列号的,其余的硬件也偶有不能获得序列号的情形,我们建议您在设计注册系统的时候,软件序列号应该包括上述四个硬件序列号信息,以防万一。

HardWareInfo需要初始化才可以提供硬件信息,通过其Ready属性可以判断HardWareInfo是否已经初始化了,通过Initialize方法进行话。初始化是需要时间的,所以在任何时候都应该先通过Ready属性判断一下,以避免重复初始化

根据硬件信息获得软件序列号后,可以利用字符加密解密函数生成和比对注册码,请参考:加密与解密

 


 回到顶部
总数 22 1 2 3 下一页