挥泪请教各位大虾一个蛮难的问题。对一个web进行版权处理,就是类似window程序中的cdkey方式

blureyes2003 2004-06-15 10:29:12
我主要是想实现这样的功能:一个用户对应一个cdkey,没有cdkey就不能使用这个web 程序。。
谢谢。。。。。。。。。。。。。。。。。。。。。。。。
...全文
183 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
blureyes2003 2004-06-18
  • 打赏
  • 举报
回复
你的用户是什么样的?是企业用户?先前不太明白你的部署配置情形

你的网络程序在启动时可以找一个注册文件,如果不存在,就需要用户提交CDKEY,然后在目录里生成这个注册文件,同时把信息缓存在记忆里

如果这个文件存在,你就用你的算法验证是否跟当前机器相符。。。
对啊,是企业用户,就是你讲的这个流程。

saucer 2004-06-18
  • 打赏
  • 举报
回复
你的用户是什么样的?是企业用户?先前不太明白你的部署配置情形

你的网络程序在启动时可以找一个注册文件,如果不存在,就需要用户提交CDKEY,然后在目录里生成这个注册文件,同时把信息缓存在记忆里

如果这个文件存在,你就用你的算法验证是否跟当前机器相符。。。
baifeng 2004-06-18
  • 打赏
  • 举报
回复
g z
blureyes2003 2004-06-18
  • 打赏
  • 举报
回复
谢了。。思归
你觉得注册码存入数据库的话安全吗?
但是用户在后台都可以看得到数据库结构和数据啊。
如果存入.dll文件中是不是有很大的技术困难呢?
saucer 2004-06-18
  • 打赏
  • 举报
回复
add a reference to System.Management.DLL first

Imports System.Management


>>>注册码就会存入web程序中的.dll文件中???

use a backend database to keep track of which users have registered
blureyes2003 2004-06-18
  • 打赏
  • 举报
回复
找到一个方法,但是居然不能引用System.Management这个命名空间。。怎么回事啊??
Imports System.Manaement

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim disk As ManagementBaseObject
Dim strResult As String
Dim diskClass = New ManagementClass("Win32_LogicalDisk")
Dim disks As ManagementObjectCollection
disks = diskClass.GetInstances()
For Each disk In disks
strResult = ""
strResult += "设备ID:" & disk("DeviceID") & vbCrLf
strResult += "磁盘名称:" & disk("Name") & vbCrLf
strResult += "磁盘卷标:" & disk("VolumeName") & vbCrLf
If disk("FileSystem") <> "" Then strResult += "文件系统:" & disk("FileSystem") & vbCrLf
strResult += "磁盘描述:" & disk("Description") & vbCrLf
If System.Convert.ToInt64(disk("Size")) > 0 Then
strResult += "磁盘大小:" & System.Convert.ToInt64(disk("Size").ToString()) & vbCrLf
strResult += "磁盘类型:" & System.Convert.ToInt16(disk("DriveType").ToString())
End If

MsgBox(strResult)

Next

End Sub

saucer 2004-06-17
  • 打赏
  • 举报
回复
it is probably very simple, try to add a setting for the CD key in the web.config, try to read it in Application_Start in global.asax, if somehow the CD key provided doesn't satisfy your algorithm, try to crash the AppDomain by throwing an exception (never tried, not sure if it works)
nchen123 2004-06-17
  • 打赏
  • 举报
回复
不知道是哪里用的? 好像需求比较奇怪..
ShengNet 2004-06-17
  • 打赏
  • 举报
回复
学习
shoutor 2004-06-17
  • 打赏
  • 举报
回复
我目前使用的就是读取机器的Mac地址,通过该地址生成一个CDKEY,在使用前需先注册
saucer 2004-06-17
  • 打赏
  • 举报
回复
never heard of such thing, but you might be able to model after

ASP.NET Server Control Licensing
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/aspnetcontrollicensing.asp
littlecrest 2004-06-17
  • 打赏
  • 举报
回复
好象利用API函数可以获取机器的硬盘序列号信息
以前看到过,不过记不起在哪里看的
有时间我帮你找找看
你也可以去网上搜索一下
blureyes2003 2004-06-17
  • 打赏
  • 举报
回复
首先,怎么获取服务器的信息呢?如果服务硬盘或网卡的信息??
ywcyj 2004-06-17
  • 打赏
  • 举报
回复
mark
blureyes2003 2004-06-17
  • 打赏
  • 举报
回复
请教 littlecrest(小浪头)
有没有具体的解决方案呢?
我现在也只是想到了,但是还做不到啊。。
xueqs 2004-06-17
  • 打赏
  • 举报
回复
mark
littlecrest 2004-06-17
  • 打赏
  • 举报
回复
或者不用存入.dll文件
只要你的.exe文件里也有同样的解密算法就行

而且我还是建议用.exe把主程序封装
除非你的.dll很关键,或者就是主程序的主要部分
要不别人很容易根据你的代码绕过你的.dll
那样就没用了
littlecrest 2004-06-17
  • 打赏
  • 举报
回复
呵呵
我就是这个意思
这是我以前想到的
可惜我写的程序没什么商业价值
所以从没实践过

只是提个小小的建议。。。祝你成功。。。:)
blureyes2003 2004-06-17
  • 打赏
  • 举报
回复
回复人: littlecrest(小浪头) ( ) 信誉:100 2004-06-17 14:34:00 得分: 0


关于加密我研究不多
不过只要是.exe文件,就应该比纯.web容易许多啊


可否这样考虑
用户安装完你的软件
软件根据用户机器硬盘序列号生成一个cdkey发给你
你再把相应的注册码什么的给他
自然你给他的软件里也有相应的注册码处理
他总不会拿着硬盘天天跑吧???

或者你再看看其他.exe文件加密的方法,不要只局限于.web上

有道理,我的思路有点开了,这样,把用户硬盘序列号加密后生成一个cdkey,用户把这个cdkey传给我,我用解密工具解密后生成一个注册码返回给用户。用户输入这个注册码,注册码就会存入web程序中的.dll文件中,每次运行都要检查此注册码是否和用户机器上的一致,这样也可以达到加密软件的作用。

littlecrest 2004-06-17
  • 打赏
  • 举报
回复
关于加密我研究不多
不过只要是.exe文件,就应该比纯.web容易许多啊


可否这样考虑
用户安装完你的软件
软件根据用户机器硬盘序列号生成一个cdkey发给你
你再把相应的注册码什么的给他
自然你给他的软件里也有相应的注册码处理
他总不会拿着硬盘天天跑吧???

或者你再看看其他.exe文件加密的方法,不要只局限于.web上
加载更多回复(8)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧