如何在程序关闭/重新打开时保存变量值?

时间:2013-11-17 07:20:38

标签: delphi delphi-7

基本上我想做的就是编写我的项目代码,以便在下次运行程序时存储任何已保存的变量。目前,当我关闭并重新打开程序时,它显然会重置任何变量。有没有简单的方法来做到这一点(请记住,我是非常新的编程

我举个例子。如果我有一个简单的程序,当我按下一个按钮时,它会向计数器添加1。现在,下次打开该程序并再次按下按钮,我想添加到上一个计数器。

提前致谢

1 个答案:

答案 0 :(得分:3)

您可以使用两个简单的例程来保存和加载注册表,如下所示:

uses   SysUtils, Registry;
...
function RegistryLoadString(const sKey, sItem, sDefVal: string ): string;
var
  reg: TRegIniFile;
begin
  reg := TRegIniFile.Create(sKey);
  try
    result := reg.ReadString('', sItem, sDefVal);
  finally
    reg.Free;
  end;
end;

procedure RegistrySaveString(const sKey, sItem, sVal: string);
var
  reg: TRegIniFile;
begin
  reg := TRegIniFile.Create(sKey);
  try
    reg.WriteString('', sItem, sVal + #0);
  finally
    reg.Free;
  end;
end;

在应用程序加载时,您可以像这样使用它们:

counter := StrToInt(RegistryLoadString( 'My program', 'counter', '0' ));

在应用程序退出时,您将保存计数器,如:

RegistrySaveString( 'My program', 'counter', IntToStr(counter) );