Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > INI Файлы


Автор: Victor 19.2.2004, 12:03
Недавно прочитал статейку про работу с ini файлами. вот:
Код

procedure TForm1.Button1Click(Sender: TObject);
var
ini     :TIniFile;
i       :Integer;
begin
ini:=ini.Create('test.ini');
i:=0;
i:=ini.ReadInteger('COUNT', 'count', i);
ini.WriteInteger('COUNT', 'count', i+1);
ini.free;
end;

Выдает ошибку Access Violation, а если я пишу в создании формы (OnCreate), то переполнение стека. Что не так то??

Автор: <Spawn> 19.2.2004, 12:17
Код
ini := TIniFile.Create('test.ini');
...

Автор: Петрович 19.2.2004, 12:21
В приведенном коде ошибок нет. Ищи в других закоулках своей программы.

Автор: <Spawn> 19.2.2004, 12:26
Цитата
В приведенном коде ошибок нет. Ищи в других закоулках своей программы.

Цитата
procedure TForm1.Button1Click(Sender: TObject);
var
ini    :TIniFile;
i      :Integer;
begin
ini:= ini.Create('test.ini'); i:=0;
i:=ini.ReadInteger('COUNT', 'count', i);
ini.WriteInteger('COUNT', 'count', i+1);
ini.free;
end;


А это что? А уже подумал, что у меня крыша поехала и я забыл как создавать экземпляр нужного класса, поэтому даже все проверил. Как я и написал перед этим работает только с TIniFile.Create.

Автор: Victor 19.2.2004, 12:43
<Spawn> ой, ты прав сенк, терь ещё вопрос по той же теме, вот TIniFile.Create - создает ini файл, А ЕСЛИ он создан то просто дальше с ним работает? Я запустил прогу несколько раз и типа счетчик меняеться т.е он не перезаписывает его

Автор: Петрович 19.2.2004, 19:59
Цитата
А это что? А уже подумал, что у меня крыша поехала и я забыл как создавать экземпляр нужного класса

biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Неее, это у меня крыша поехала.
biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif

Автор: Pakshin A. S. 19.2.2004, 22:43
Да... В help'е примерчики валялись...

Автор: gray_k 20.2.2004, 09:45
Цитата
А ЕСЛИ он создан то просто дальше с ним работает? Я запустил прогу несколько раз и типа счетчик меняеться т.е он не перезаписывает его

Ну если ты создашь глобальную переменную, или атрибут класса ini:TIniFile, в OnCreate поропишешь
ini:=TIniFile.Create('test.ini'), в OnDestroy - ini.free, то можешь работать с обектом всегда, пока есть форма.

Автор: Unregistered 20.2.2004, 09:51
А в uses добавил Inifiles;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)