当前位置:首页 > 网络编程 > 软件语言 > DELPHI > 在Delphi程序中实现时间限制和加密

在Delphi程序中实现时间限制和加密

点击次数:51 次 发布日期:2008-11-09 08:41:41 作者:源代码网
源代码网推荐
广告载入中
本例中TRegistry是关键类,Delphi 4.0不能自行加入,需在uses部分手工加入“registry”,通过其方法“ReadString”和“WriteString”来读出和写入字符,亦可通过其方法“ReadDate”和“WriteDate”来读出和写入日期。
源代码网推荐
源代码网推荐 程序第一次运行就写入其运行时间,应用期限为30天,超过30天就不再运行。全局变量NoRegistry、SpareDays来分别判断是否注册和剩余期限,自定义函数Encrypt为用户名到密码的变换函数。
源代码网推荐
源代码网推荐 一、程序启动时,通过搜索注册表,判断是否第一次运行和是否注册,来确定程序是否运行。
源代码网推荐 procedure TForm1.FormCreate(Sender: TObject);
源代码网推荐 var
源代码网推荐
源代码网推荐 Reg:Tregistry;
源代码网推荐
源代码网推荐 KeyName,TempCode,TempName,TempStr:string;
源代码网推荐
源代码网推荐 Same:Integer;
源代码网推荐
源代码网推荐 FirstDate,NowDate:Tdatetime;
源代码网推荐
源代码网推荐 NumberOfDays:real;
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 NoRegistry:=true;
源代码网推荐
源代码网推荐 NowDate:=date; //取得运行时系统日期
源代码网推荐
源代码网推荐 try
源代码网推荐
源代码网推荐 //创建注册表,有该键则读取,无则创建
源代码网推荐
源代码网推荐 Reg:=Tregistry.Create ;
源代码网推荐
源代码网推荐 Reg.RootKey :=hkey_local_machine;
源代码网推荐
源代码网推荐 KeyName:="SoftwarejsjbExample";

软件开发网 www.mscto.com


源代码网推荐
源代码网推荐 if Reg.OpenKey(KeyName,true) then
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 TempName:=Reg.ReadString("UsrName");
源代码网推荐
源代码网推荐 TempCode:=Reg.ReadString("Passwd");
源代码网推荐
源代码网推荐 //读取用户名,注册号
源代码网推荐
源代码网推荐 try
源代码网推荐
源代码网推荐 FirstDate:=Reg.ReadDate("Date");
源代码网推荐
源代码网推荐 //非第一次则读入第一次运行时间
源代码网推荐
源代码网推荐 except
源代码网推荐
源代码网推荐 Reg.WriteDate("Date",NowDate);
源代码网推荐
源代码网推荐 // 若为第一次运行,则写入系统日期
源代码网推荐
源代码网推荐 FirstDate:=NowDate;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 end ;
源代码网推荐
源代码网推荐 reg.CloseKey ;
源代码网推荐
源代码网推荐 finally
源代码网推荐
源代码网推荐 reg.Free ;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 TempStr:=Encrypt(TempName);
源代码网推荐
源代码网推荐 //通过自定义函数Encrypt()来获取密码
源代码网推荐
源代码网推荐 Same:=CompareText(TempStr,TempCode);
源代码网推荐
源代码网推荐 //比较密码
源代码网推荐
源代码网推荐 if TempName<>"" then
源代码网推荐
源代码网推荐 if Same=0 then
源代码网推荐
源代码网推荐 NoRegistry:=false;
源代码网推荐
源代码网推荐 //验证密码,通过NoRegistry为false
源代码网推荐
源代码网推荐 if NoRegistry then
源代码网推荐
源代码网推荐 begin //若未注册...
源代码网推荐
源代码网推荐 NumberOfDays:=Nowdate-FirstDate;
源代码网推荐
源代码网推荐 SpareDays:=round(31-NumberOfDays);
源代码网推荐
源代码网推荐 Label1.Caption :=FloatToStr(SpareDays);


源代码网推荐
源代码网推荐 if((NumberOfDays>31) or (NumberOfDays<-1)) then
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 showmessage("程序未注册超过试用期或更改系统时间,将终止运行!");
源代码网推荐
源代码网推荐 application.Terminate;//超过30天,则禁止运行
源代码网推荐 end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 二、注册过程,其响应入口可放于"About"内。
源代码网推荐
源代码网推荐 procedure TAbout.Button1Click(Sender: TObject);
源代码网推荐
源代码网推荐 var
源代码网推荐
源代码网推荐 InptName,InptCode,RealCode:String;
源代码网推荐
源代码网推荐 Same:Integer;
源代码网推荐
源代码网推荐 Reg:Tregistry;
源代码网推荐
源代码网推荐 Keyname:String;
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 if NoRegistry then //未注册时做
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 RealCode:="";
源代码网推荐
源代码网推荐 InptName:= InputBox("注册", "输入你的名字", "");
源代码网推荐
源代码网推荐 if InptName<>"" then
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 InptCode:= InputBox("注册", "输入注册号", "");
源代码网推荐
源代码网推荐 RealCode:=Encrypt(InptName);
源代码网推荐
源代码网推荐 Same:=CompareText(RealCode,InptCode);
源代码网推荐
源代码网推荐 if (Same<>0) then
源代码网推荐
源代码网推荐 showmessage("注册号码不对,注册未成功!")
源代码网推荐
源代码网推荐 else
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 //密码匹配时做:把用户名、密码写入注册表


源代码网推荐
源代码网推荐 Try
源代码网推荐
源代码网推荐 Reg:=Tregistry.Create ;
源代码网推荐
源代码网推荐 Reg.RootKey :=hkey_local_machine;
源代码网推荐
源代码网推荐 KeyName:="SoftwarejsjbExample";
源代码网推荐
源代码网推荐 if Reg.OpenKey(KeyName,true) then
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 Reg.WriteString("Passwd",InptCode);
源代码网推荐
源代码网推荐 Reg.WriteString("UsrName",InptName);
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 reg.CloseKey ;
源代码网推荐
源代码网推荐 finally
源代码网推荐
源代码网推荐 Reg.Free ;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 NoRegistry:=false;
源代码网推荐
源代码网推荐 //可修改注册后的界面
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐 三、密码的变换函数。此变换函数可由读者自由发挥,在此,仅示一例而已。
源代码网推荐
源代码网推荐 Function TForm1.Encrypt(TempStr:string):string;
源代码网推荐
源代码网推荐 Var
源代码网推荐
源代码网推荐 Str1:String;
源代码网推荐
源代码网推荐 i,j:Integer;
源代码网推荐
源代码网推荐 Begin
源代码网推荐
源代码网推荐 Str1:="";
源代码网推荐
源代码网推荐 For i:=1 to Length(TempStr) do
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐 j:=(iiii mod (i 30)) (ii mod (i 20)) i3 1;
源代码网推荐
源代码网推荐 Str1:=Str1 chr(ord(TempStr[i]) j);
源代码网推荐
源代码网推荐 j:=(iiii mod (i 30)) (ii mod (i 20)) i3 1;
源代码网推荐
源代码网推荐 Str1:=Str1 chr(ord(TempStr[i]) j);
源代码网推荐
源代码网推荐 End;
源代码网推荐
源代码网推荐 Result:=Str1;
源代码网推荐
源代码网推荐 end;


源代码网推荐

源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华