delphi 校验注册码时的技巧  
官方Delphi 学习QQ群: 682628230(三千人)\n
频道

delphi 校验注册码时的技巧


在进行注册码比较的时候要注意(En代表加密函数)
if En(系列号)=En(注册码) then
ShowMessage('注册成功!')
else
ShowMessage('注册失败');
如果是这样进行判断的话,那么注册码在内存当中就可以直接看到了。避免这样的情况发生.你可以对比较的值进行移位操作这样在内存中出现的值就不是真正的注册码.
if ShlStr(En(系列号))=ShlStr(En(注册码)) then
ShowMessage('注册成功!')
else
ShowMessage('注册失败');
还有就是注册成功和注册失败的时候不要作任何的提示,只是可用和不可用功能.

移位的函数我给出一个,其实你自己可以写自己的移位函数,我只是给出一个参考的:

Function ShlStr(Str:PChar):PChar; //进行明码变换;
var
a:LongWord;
Int1,Int2:Integer;
j,j1:Integer;
sum:LongWord;
Str1:String;
begin
Str1:=StrPas(ABC44Str);
Int2:=Length(Str1);
for j1:=1 to Int2 do
begin
a:=ord(Str1[j1]) shl 7;
sum:=sum+a;
end;
Result:=PChar(IntToStr(sum));
end;

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.046449899673462 seconds