Delphi实现限定软件使用时间的方法

 更新时间:2014年07月24日 11:10:15   投稿:shichen2014  
这篇文章主要介绍了Delphi实现限定软件使用时间的方法,商业软件开发中非常实用的功能,需要的朋友可以参考下

我们经常看到很多网上下载的试用版软件,都有使用时间的限制,就其商业角度而言也是处于软件效益保护的一种措施,可以让用户免费试用一段时间,若满意就可以购买商业软件。本文所述实例代码功能就是如何为Delphi所编写的程序添加使用时间的限制功能,这里默认的时限为30天。

主要代码如下:

unit Unit1;
interface
uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
 Registry, Dialogs;
type
 TForm1 = class(TForm)
  procedure FormCreate(Sender: TObject);
 private
  { Private declarations }
 public
  { Public declarations }
 end;
var
 Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
var
  registerTemp : TRegistry;
  curDate : TDateTime;
begin
  registerTemp := TRegistry.Create;
  with registerTemp do
  begin
    RootKey := HKEY_LOCAL_MACHINE;
    //判断是否初次运行程序
    if OpenKey('Software\MySoftware',True) then
    begin
      if ReadBool('Runned') then
      //不是第一次运行
      begin
        curDate := Date;
        if (curDate-ReadTime('LastRunTime'))>=ReadInteger('Duration') then
        begin
          //当前的系统时间超出了使用期限
          ShowMessage('试用版已到期');
          exit;
        end
        else
        begin
          DeleteKey('LastRunTime');
          WriteTime('LastRunTime',Date);
        end;
      end
      else
      begin
        //初次运行程序
        DeleteKey('Runned');
        WriteBool('Runned',True);
        //设置试用期限30天
        WriteInteger('Duration',30);
        //写入当前运行时间
        WriteTime('LastRunTime',Date);
      end;
    end
    else
    begin
      ShowMessage('Fails!');
    end;
    CloseKey;
  end;
end;
end.

相关文章

  • 插件管理框架 for Delphi(一)

    插件管理框架 for Delphi(一)

    插件管理框架 for Delphi许多软件采用“插件”(PlugIns)来扩展其功能,比如PhotoShop所支持的各类滤镜就是插件;我们所熟知的Winamp,也有许多皮肤以及可视效果插件。再有微软的windows media player,以及QQ,冲浪软件Opera……采用插件技术的软件数不胜数,而各个软件的具体实现方式也是五花八门,各有特点。
    2008-03-03
  • Delphi7中群发Email邮件的方法

    Delphi7中群发Email邮件的方法

    这篇文章主要介绍了Delphi7中群发Email邮件的方法,涉及邮件服务器软件的使用,电子邮件的判断与发送功能的实现,是非常实用的技巧,需要的朋友可以参考下
    2014-12-12
  • Delphi实现读取系统时间与日期完整实例

    Delphi实现读取系统时间与日期完整实例

    这篇文章主要介绍了Delphi实现读取系统时间与日期完整实例,需要的朋友可以参考下
    2014-07-07
  • Delphi2007编译的程序在Win7下图标模糊的解决办法

    Delphi2007编译的程序在Win7下图标模糊的解决办法

    这篇文章主要介绍了Delphi2007编译的程序在Win7下图标模糊的解决办法,需要的朋友可以参考下
    2014-08-08
  • delphi建立、读取、存贮INI文件的方法《三》

    delphi建立、读取、存贮INI文件的方法《三》

    控制INI文件几法要利用.INI文件做程序有关数据的存储工作,就需要能读和写.INI文件,所以列了如下方法给大家参考:
    2008-03-03
  • Delphi下OpenGL2d绘图之画线的方法

    Delphi下OpenGL2d绘图之画线的方法

    这篇文章主要介绍了Delphi下OpenGL2d绘图之画线的方法,需要的朋友可以参考下
    2014-07-07
  • Delphi之Pascal语言中的关键字及保留字汇总

    Delphi之Pascal语言中的关键字及保留字汇总

    这篇文章主要介绍了Delphi之Pascal语言中的关键字及保留字汇总,需要的朋友可以参考下
    2014-07-07
  • delphi中exit,abort,break,continue的区别介绍

    delphi中exit,abort,break,continue的区别介绍

    本文详细介绍下delphi中表示跳出的有break,continue, exit,abort, halt, runerror的区别,感兴趣的朋友可以参考下哈,希望对你学习跳出有所帮助
    2013-04-04
  • Delphi基本图像处理方法汇总

    Delphi基本图像处理方法汇总

    这篇文章主要介绍了Delphi基本图像处理方法,实例汇总了Delphi操作图像实现浮雕、反色、模糊、翻转等常用效果的方法,非常具有实用价值,需要的朋友可以参考下
    2015-05-05
  • Delphi中判断文件是否为文本文件的函数

    Delphi中判断文件是否为文本文件的函数

    在用Delphi 编程处理文本文件的时候,如果要装载的文件比较大,你可能会想在文件装载过程中提供一个装载进度的提示--那么你就必需自己编写直接通过文件打开/读取函数来装载文件内容的函数。
    2008-03-03

最新评论