Delphi Код:
var
MyFile: TStringList;
const
MyFileName = 'c:\myfile.txt';
procedure Init; //Вызывается при включении скрипта
begin
MyFile:=TStringList.Create;
try
MyFile.LoadFromFile(MyFileName);
except// если ошибка, не обращаем внимание
end;
// SetValue('test','hello');
// ShowMessage(GetValue('test'));
end;
procedure Free; //Вызывается при выключении скрипта
begin
if MyFile<>nil then
begin
MyFile.SaveToFile(MyFileName); // сохраняем при завершении работы скрипта.
MyFile.Free; // освобождаем память
end;
end;
// чтение значения из переменной
function GetValue(ValName: string): string;
begin
result:=MyFile.Values[ValName];
end;
// запись переменной
procedure SetValue(ValName: string; Value: string);
begin
MyFile.Values[ValName]:=Value;
end;
//***********************************************
зы:
теперь в где нужно вызывай для чтения: GetValue('ИмяПеременной');
для записи
SetValue('ИмяПеременной','Значение');
работает, проверил =)
зыы: В идеале все критические блоки нужно включать в болки типа try/except, try/finally
try
....
любые операции
....
finally // это блок выполнится при любых обстоятельствах (ошибка, выход из функции и т.д.)
...
здесь освобождаем рессурсы (уничтожаем че выше наплодили)
...
end;//try