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(Str);
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;

相关阅读 >>

Delphi获得webbrowser中的html文本

Delphi 流与字符串

Delphi 实现文件防删除非亢占(非hook)

Delphi xe10.x 快捷失灵解决办法

Delphi 查询进程名进程id/进程路径 父进程/子进程

Delphi cef4Delphi 常用设置

Delphi中将webbrowser用作网页编辑器

Delphi 10分钟10行代码开发app(Delphi 应用案例)

Delphi 时间转换为gmt格式

Delphi中如何向某个ip不间断的发送数据

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...