首页 | 新闻资讯 | 软件应用 | 图形图像 | 网络应用 | 硬件学堂 | 程序开发 | 安全中心 | 素材下载 | 作者专区 | 学院论坛
精选专题 | 精美壁纸 | 专家答疑 | Flash剧场 | Photoshop | 名词解释 | 梦幻桌面 | PS高手进阶 | QQ区 | 图书 | 黑客教材
Flash教程| 卡通制作 | AutoCAD | 3DMax实例 | PS视频教程| 网页制作 | CorelDRAW| Firework | 滤镜与实例 | 全部视频教程
当前位置:eNet硅谷动力 > 学院频道 > VC

如何用VC实现软件注册
2004-12-30 08:57 作者:程序员之家 来源:eNet论坛
【简 介】
要实现软件注册功能,首先需要知道实现注册机制要涉及到的几个问题……
    
加入收藏  设为首页

  要实现软件注册功能,首先需要知道实现注册机制要涉及到的几个问题:1、如何加入注册检测,判断软件是否注册;2、如何生成注册码,如何保证一个用户名只生成与之唯一对应的注册码;3、在软件不注册情况下,如何限制软件功能的局限性;4、对已经负费使用用户而言,不应造成使用不便。

  首先,应该有一个生成注册码的算法,以下是我简单的一个生成15位注册码的算法:

  //该函数返回一个CSTRING类型的15位注册码,入口参数为用户名

  CString GetRegPasswd(CString amp;DirName)

  {

  //将用户名换算成15位注册码

  long Num1,Num2,Num3;

  

  char sn[16]={0};

  CString p;

  int i,len;

  

  Num1=0;

  Num2=0;

  Num3=0;

  

  len=int(strlen(DirName));

  if(len!=0)

  {

  for( i=1;i<=len;i++)

  {

  //第一步算法

  Num1=(long(Num1+(int(DirName[i-1])*i*i)*(i*sqrt(DirName[i-1])+1)))%100000;

  //第二步算法

  Num2=(Num2*i+(long(pow((int)DirName[i-1],2)*i)))%100000;

  //第三步算法

  Num3=(Num2+(long)sqrt(Num1))%100000;

  }

  //以下把三个算法结果分别生成5个字符,共有15个

  for(i=0;i<5;i++)

  sn[i]=(int)(Num1+31+i*i*i)%128;

  for(i=5;i<10;i++)

  sn[i]=(int)(Num2+31+i*i*i)%128;

  for(i=10;i<15;i++)

  sn[i]=(int)(Num3+31+i*i*i)%128;

  sn[15]=0;

  //以下循环把所有生成的字符转换为0---9,A---Z,a----z

  for(i=0;i<15;i++)

  {

  while((sn[i]<'0'    sn[i]>'9') amp;amp; (sn[i]<'A'    sn[i]>'Z') amp;amp;(sn[i]<'a'    sn[i]>'z') )

  {

  sn[i]=(sn[i]+31+7*i)%128;

  }

  }

  //赋值给一个CSTRING变量,用做函数返回值

  p.Format("%s",sn);

  }

  return p;

  }

  //检查软件是否注册的函数

热门推荐:
如何迅速成为Java高手
&nbsp;

成为编程高手的八大奥秘






[1] [2]下一页
关键字: VC++ 
您对这篇文章的看法是:    喜欢 反感 支持 反对 加油 鄙视 学习 打击 佩服 漂亮 路过 发表评论
1.您是否愿意通过eNet在线报名的方式,参加培训机构的培训?
是 
2.通过硅谷动力报名,您希望得到哪些优惠?
学费打折 赠送课时
3.报名后,您更愿意将培训费用:
通过eNet转交培训机构
直接交给培训机构
4.您在选择培训机构时,更注重:
培训机构名气  培训费用
5.您的年龄范围:
15~18岁  19~22岁
23岁以上
视频教程】 【专题汇总】 【不懂就问我关闭窗口

用Photoshop笔刷打造梦幻蝴蝶仙子
美不胜收 XP也用Vista七彩泡泡屏保
D.SPEED可爱的宇宙机器人设计欣赏
网络工程师必须掌握的44个路由知识
一周软件回顾 傲游软件易用性更强
 本栏目最新文章
·VC各类之间的调用函数总结
·VC中特殊字体的实现方法讲解
·VC++中进程与多进程管理的方法
·用VC 6.0实现串行通信的三种方法
·VC++实现回收站的文件存取
 精彩回放
·3DSMAX打造书本翻开效果
·共享上网技巧应用四则
·陪酒女浸泡在酒里的青春
·美女的性感靓丽婚纱设计
·妖冶身姿 死或生3壁纸
·剿灭Win XP下的29个烦恼
·黑客必备 NET命令大全
·用PS制作精致绝伦的红酒
 精彩推荐
 今日软件下载
汇聚精彩 清晰流畅
NETiTV
网络电视王中王
 往日推荐
·手工破解网吧多种限制
·Windows 网络管理技巧
·WMP 10使用技巧三则
·女孩问你帅不帅 要小心
·注册表优化XP 20招
·制作XP万能ghost光盘
·WMP10火拼DVD播放器
·街头霸王图片集中营
·五大搜索引擎横向评测
·防御计算机病毒十大步骤

论坛精华
·PS去掉图片上的文字 
·photoshop完美扣图教 
·国外高手的调色合成 
·史上最强最多 photo 
·PS初学者十三课,献给 
·eNet学院史上最优秀 
热点推荐
修复灰暗照片
浪漫婚纱照片
Flash视频编程
章子怡月历桌面
热点关注
·网站开发全程设计视频教程
·Photoshop CS3平面广告设计
·C++从入门到精通视频教程
·ASP.NET经典实例视频教程
·Flash8 Pro经典实例视频教程
·计算机等级考试二级VB上机
·eNet网络安全视频教程
·瑞星杀毒30元轻松用全年
·瑞星卡卡上网助手 正版免费
有女如莲 Photoshop手绘古典美女
往日推荐
网站重构设计
鹏哥C#教程
美女怀旧照片
网站开发
焦点关注