以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  为什么即使注册成功,也每次启动仍然提示注册呢?会很烦的。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=108691)

--  作者:旭日生
--  发布时间:2017/10/27 13:03:00
--  为什么即使注册成功,也每次启动仍然提示注册呢?会很烦的。
从这个贴子中学到一个如何加密和注册软件的方法,试用一下确实挺好,先谢谢作者是。
但不知为什么即使正确注册后,每次启动仍然提示要注册。为什么会有这样的问题?
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=95605
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:软件注册 (1).foxdb

图片点击可在新窗口打开查看此主题相关图片如下:image 3.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:image 4.png
图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2017/10/27 14:41:00
--  

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:软件注册 (1).foxdb


--  作者:旭日生
--  发布时间:2017/10/27 14:58:00
--  
没看到改进,仍然如此呀
--  作者:有点甜
--  发布时间:2017/10/27 15:04:00
--  
 没,问,题。测试没问题。
--  作者:有点甜
--  发布时间:2017/10/27 15:06:00
--  
以下是引用旭日生在2017/10/27 14:58:00的发言:
没看到改进,仍然如此呀

 

请注意,机器码你只能用 HardDiskId 不能其它别的机器码。


--  作者:旭日生
--  发布时间:2017/10/27 15:30:00
--  
一直是使用同一台电脑,好象机器码会因为拨插U盘之类因素有所不同?
使用这个命令Output.Show(EncryptText("用户提供机器码","abc","abc"))得到的机器码,和之前的不同。但软件记忆的仍然是之前的机器码。


--  作者:有点甜
--  发布时间:2017/10/27 15:41:00
--  

computerId有可能会变;

 

这个是硬盘号,基本不会变 msgbox(HardDiskId )

 

或者获取其余的硬件信息 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=108515&skin=0

 


--  作者:旭日生
--  发布时间:2017/10/27 15:56:00
--  
谢谢!在甜版主启发下,找到原因了,硬盘ID弄错了。不过,另一个ID不知是怎么来的?居然也注册成功。
--  作者:有点甜
--  发布时间:2017/10/27 16:55:00
--  
以下是引用旭日生在2017/10/27 15:56:00的发言:
谢谢!在甜版主启发下,找到原因了,硬盘ID弄错了。不过,另一个ID不知是怎么来的?居然也注册成功。

 

机器码文本框可以动态输入值,你应该是自己输入机器码了吧?你可以把textbox1文本框设置成不可编辑的。


--  作者:旭日生
--  发布时间:2017/10/29 17:44:00
--  
找到了终极原因:
1、将窗口的AfterLoad事件设为:

e.Form.Controls("TextBox1").Value = ComputerId
e.Form.Controls(
"TextBox2").Value = GetConfigValue("Register" & ComputerId, "")

2、但注册时的“确定”的click事件却使用了如下代码:

If e.Form.Controls("TextBox2").Text = EncryptText(e.Form.Controls("TextBox1").Text, "acbd", "cad") Then
Registry.SetValue("HKEY_CURRENT_USER\\Software\\MyAPP","Register" & HardDiskId, e.Form.Controls("TextBox2").Value)
MessageBox.show("注册成功,感谢您的使用!")
e.Form.Close()
Else
MessageBox.show("注册码错误,请重新输入")
End If


统一成“HardDiskId”,就OK了!