Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TIniFile, Не работает 
:(
    Опции темы
Yura_Matsuk
Дата 23.10.2004, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 16.5.2004

Репутация: нет
Всего: нет



Вот мой код:
Код

unit resUnit;
interface
uses inifiles;
type
       Toptions=class(Tobject)
        lasthost,lastuser:string;
        procedure load;
        procedure save;
       end;
var
       ini:tinifile;options:toptions;
       bf:array[0..100] of char;
implementation
procedure toptions.load;
begin
lasthost:=ini.ReadString('Connect','lasthost','localhost');
end;
procedure toptions.save;
begin
ini.WriteString('Connect','lasthost',lasthost);
end;
initialization
ini:=Tinifile.Create('options.ini');
options:=toptions.Create;
options.load;
finalization
options.save;
ini.UpdateFile;
ini.Destroy;
end.


Но не работает ничего. Файл не создается. Попробовал создать вручную файл options.ini:

[Connect]
lasthost=Yo

Файл не изменяется, а readstring возвращает 'localhost'. :stena :stena :stena
--------------------
Смех смехом, а ОНА кверху мехом...
PM MAIL   Вверх
Girder
Дата 23.10.2004, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй 2
***


Профиль
Группа: Участник Клуба
Сообщений: 1993
Регистрация: 12.5.2004

Репутация: 31
Всего: 155



Все путем... ну нет конечно всяких там проверок... но код рабочий ;-) .

Цитата
On Windows, most INI files are stored in the \WINDOWS directory. To work with an INI file in another location, specify the full path name of the file in FileName.
Т.е. не там искал свой файл :) .

К примеру измени две строки:
Код
uses inifiles,SysUtils;
...
ini:=Tinifile.Create(ExtractFilePath(ParamStr(0))+'options.ini');
...
И найдеш свой файл там... где находится твой экзешник... :)

Удачи.


--------------------
Как слышим, так и пишим.
Истина где-то там...
PM   Вверх
Alex
Дата 23.10.2004, 23:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Код
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, ComCtrls, StdCtrls, inifiles;

type
 Toptions=class(Tobject)
   private
     Ini: TIniFile;
     Flasthost: string;
   public
     procedure load;
     procedure save;
   published
     constructor Create;
     destructor Destroy; override;
     property lasthost: string read Flasthost write Flasthost;
  end;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Button2: TButton;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
 private

 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 options: Toptions;


implementation

{$R *.dfm}

{ Toptions }

constructor Toptions.Create;
begin
 Ini:= TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'options.ini');
end;

destructor Toptions.Destroy;
begin
 if Assigned(Ini) then Ini.Free;
 inherited;
end;

procedure Toptions.load;
begin
 Flasthost:= Ini.ReadString('Connect', 'lasthost', 'localhost');
end;

procedure Toptions.save;
begin
 Ini.WriteString('Connect', 'lasthost', Flasthost);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 options.lasthost:= '1';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 ShowMessage(options.lasthost);
end;

initialization
 options:=toptions.Create;
 options.load;
finalization
 options.save;
 if Assigned(options) then options.Free

end.



--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Yura_Matsuk
Дата 24.10.2004, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 16.5.2004

Репутация: нет
Всего: нет



Цитата
On Windows, most INI files are stored in the \WINDOWS directory. To work with an INI file in another location, specify the full path name of the file in FileName.

Спасибо Girder, именно это мне и помогло.
--------------------
Смех смехом, а ОНА кверху мехом...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1549 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.