《vb获取硬盘序列号利用硬盘序列号计算软件注册码-vb》由会员分享,可在线阅读,更多相关《vb获取硬盘序列号利用硬盘序列号计算软件注册码-vb(2页珍藏版)》请在金锄头文库上搜索。
1、vb获取硬盘序列号:利用硬盘序列号计算软件 注册码 -vb 教程疯狂代码 http:/CrazyC ?:http:/CrazyC 盘序列号计算软件注册码。在模块中加入下列声明:Public Declare Function GetVolumeInformation Lib kernel32 _ Alias GetVolumeInformationA (ByVal lpRootPathName As String, _ ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, _ lpVolumeSerialNumber
2、 As Long, lpMaximumComponentLength As Long, _ lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _ ByVal nFileSystemNameSize As Long) As Long得到某一磁盘分区的信息,如 C:窗体代码如下:Option ExplicitPrivate Regid, Localid As LongPrivate Sub CmdLocalID_Click()根据C盘序列号得到原IDDim Driver, VolName, Fsys As Stri
3、ngDim volNumber, MCM, FSF As LongDriver = c:Dim res As Longres = GetVolumeInformation(Driver, VolName, 127, volNumber, MCM, FSF, Fsys, 127)volNumber是C盘序列号Localid = volNumber / 2 + 123456789Text1.Text = LocalidEnd SubPrivate Sub CmdRegID_Click()根据原ID算出注册IDIf IsNumeric(Text1.Text) ThenRegid = CLng(Tex
4、t1.Text) / 4 * 3 + 987654321ElseerrorEnd IfText2.Text = RegidEnd SubPrivate Sub CmndCheckID_Click()验证注册IDDim Driver, VolName, Fsys As StringDim volNumber, MCM, FSF As LongDriver = c:Dim res As Longres = GetVolumeInformation(Driver, VolName, 127, volNumber, MCM, FSF, Fsys, 127)Dim Tid As LongTid = volNumber / 2 + 123456789If Regid = Tid / 4 * 3 + 987654321 ThenMsgBox 正确!ElseMsgBox 错误!End IfEnd Sub为便于演示,我在窗体上用了两个文本框三个按钮,请根据情况灵活使用,可以在用户端算出原ID,发给你,你算出注册ID再发给用户,验证当然是在用户端啦。ID算法很简单,只作示范。此注册ID只能在 这一台机器上使用,对于非高手用户来说是足够啦。注:如用户格式化C:盘后需重新获得ID。2008-9-25 1:40:28疯狂代码 http:/CrazyC