大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> 程序开发 -> 用DEPHI为应用软件建立注册机制

用DEPHI为应用软件建立注册机制

时间: 2021-07-31 作者:daque

怎样养护本人的软硬件不被非受权盗用的题目,一直搅扰着每一个步调员。当前生界上养护软硬件的本领有很多,主假如沿用加密(如加软硬件狗)办法或软硬件备案办法。运用软硬件狗等加密本领,固然其养护最灵验,但对受权用户的平常运用有确定的感化,并且软硬件散发比拟搀杂,在本质应用中比拟少被沿用。而备案备案办法则是暂时最时髦、应用最普遍的本领,固然有很多通用软硬件其备案码不妨很简单地被发热友们所解,但对于独力步调员为某一定运用安排的运用软硬件而言,沿用备案体制显得最财经、最简单,并且在确定的范畴内特殊灵验。笔者在本质处事中,普遍运用了软硬件备案本领,灵验地保护了软硬件的权力。  dephi软硬件的功效极为宏大,深受步调员爱好。用dephi开拓的软硬件,不妨很简单地介入备案体制。底下笔者就怎样在dephi开拓的软硬件中介入备案体制与伙伴们交谈心得。  要实行软硬件备案体制,需处置以次几个题目:1、怎样介入备案检验和测定,确定软硬件能否备案;2、怎样湮没备案码,及能否备案的标记;3、在软硬件不备案情景下,怎样控制软硬件的运用功夫或度数;4、对平常用户而言,不应形成运用未便。对于之上四个题目,怎样湮没备案码及能否备案的标记是要害。在windows9第5中学,win95自己及大普遍的运用软硬件都将其百般参数放入备案表中,所以备案表内的数据显得极为宏大和搀杂。即使将备案标记湮没在备案表的某一边际中,想要找到它并领会它是极端艰巨的事。所以咱们不妨运用这一点,在备案表的某个分支上树立一个从称呼上看毫无特出意旨的要害字,将本人软硬件的备案标记数据寄存在这边。以次是所有备案体制的过程框图:   从上海图书馆不妨看出,所有备案体制重要由两个局部构成:查看和备案。经过查看标记值,得出软硬件能否已备案;若没有备案,则要看它承诺运用的度数能否已到达;若可运用的度数已用完,则应提醒用户输出备案码,举行备案;只有效户输出的备案码精确时,才让用户连接运用软硬件,同声将标记置为已备案,让用户长久性运用;要不承诺运用的度数未到达,应将度数加一;若用户备案输出的备案码缺点或中断备案,则径直封闭软硬件,中断其连接运用。固然,在软硬件承诺运用度数未到达时,也应经过菜单项为用户供给时机举行备案备案。以次是笔者在本质开拓中,创造备案体制的步调代码及解释。 假如软硬件的主步调窗口为form1,则将该段代码置放在form1.create事变中。代码如次:procedure tform1.form1create(sender: tobject);varre_id:integer;registertemp : tregistry;inputstr,get_id:string;dy,clickedok:boolean;begin dy:=false; //软硬件能否已到备案期、及能否承诺连接运用的标记,当班值日为false是为承诺运用。 registertemp := tregistry.create; //筹备运用备案表 with registertemp do begin   rootkey:=hkey_local_machine; //寄存在此根下   if openkey('software\microsoft\windows\currentversion\mark',true) then    // 建一目次,寄存标记值。固然也不妨寄存在已生存的目次下。如何样,很难创造吧?    begin     if valueexists('gc_id') then begin //用gc_id的值动作标记,开始确定其生存否?       re_id:=readinteger('gc_id');//读出标记值       if (re_id<>0) and (re_id<>100) then begin //若标记值为0,则证明已备案。              //若不为0且值不到100,证明虽未备案,但承诺运用的度数尚未到达。        re_id:=re_id+5; //承诺标记的最大值为100,历次加5,则最多只可用20次。        writeinteger('gc_id',re_id);//将革新后的标记值写入备案表中。     end;     if re_id=100 then dy:=true; //假设值已到100,则应备案。    end   else writeinteger('gc_id',5);//创造标记,并置初始标记值。  end;  if dy then begin //若dy值为true,则应提醒用户输出备案码,举行备案。    clickedok:=inputquery('您运用的利害备案软硬件,请输出备案码:',' ',inputstr);    if clickedok then begin      get_id:=inttostr(27593758*2);//备案码为55187516,固然可介入更杂的算法。      if get_id=inputstr then begin        writeinteger('gc_id',0);//若输出的备案码精确,则将标记值置为0,即已备案。        closekey;        free;       end      else begin //若输出的备案码缺点,应作出提醒并中断让其连接运用        application.messagebox('备案码缺点!请与作家接洽!','劝告框',mb_ok);        closekey;        free;        application.terminate; //遏止步调运转,中断让其连接运用       end;      end    else begin //若用户不输出备案码,也应作出提醒并中断让其连接运用      application.messagebox('请与作家接洽,运用备案软硬件!','劝告框',mb_ok);      closekey;      free;      application.terminate;     end;  end; end;end;(注:经过菜单举行备案的本领同本段提醒用户举行备案的实质好像,这边不供给代码。)  之上步调代码已在dephi3.0/win95情况中运转经过,并在本质应用中获得考证。对正当用户而言,如许的体制,只有其录入备案码一次就不妨,不减少其凡是运用的承担;而对不法用户而言,只有他获得备案码或重装windows95,要不胜过运用度数后,将没辙连接运用。固然在本质运用中再有很多场合不妨进一步巩固反破译本领,欢送伙伴们提出品评和引导。 (福建 杨健珊)

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.