Avatar billede clansite.dk Nybegynder
04. september 2002 - 12:57 Der er 6 kommentarer og
1 løsning

Ini

Hvad er der galt?!?

procedure TForm1.Button1Click(Sender: TObject);
var
  IniFile  : TIniFile;
begin
  IniFile := TIniFile.Create(
            ChangeFileExt(Application.ExeName,'.ini'));;

  Edit1 := IniFile.ReadInteger
              ('URLS', Edit1);

  IniFile.Free;
end;

Der står bare: [Error] Calle.pas(39): Undeclared identifier: 'TIniFile'

HELP
Avatar billede morten_s Nybegynder
04. september 2002 - 12:59 #1
Har du IniFiles med under dit Uses ?
Avatar billede clansite.dk Nybegynder
04. september 2002 - 13:01 #2
Ja
Avatar billede clansite.dk Nybegynder
04. september 2002 - 13:02 #3
Har rettet lidt:

procedure TForm1.Button1Click(Sender: TObject);
var
  IniFile  : TIniFile;
begin
  IniFile := TIniFile.Create(
            ChangeFileExt(Application.ExeName,'.ini'));;

  Edit1 := IniFile.ReadInteger
                ('URLS'+Edit1.text;)

  IniFile.Free;
end;


[Error] Calle.pas(45): Not enough actual parameters
Avatar billede morten_s Nybegynder
04. september 2002 - 13:09 #4
Her har du et komplet kodeeksempel på at læse og skrive til IniFil

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
//Skriver til inifil
var
  MinIniFil: TIniFile;
begin
  try
    MinIniFil:= TIniFile.Create(ExtractFilePath(Application.ExeName) + '\MinIniFil.ini');
    with MinIniFil do
    begin
      WriteInteger('URLS', 'MitNr', StrToInt(Edit1.Text));
      //Dine andre værdier kommer her
    end;
  finally
    MinIniFil.Free;
  end;
end;



procedure TForm1.Button2Click(Sender: TObject);
//Læser inifil
var
  MinIniFil: TIniFile;
begin
  try
    MinIniFil:= TIniFile.Create(ExtractFilePath(Application.ExeName) + '\MinIniFil.ini');
    with MinIniFil do
    begin
      Edit1.Text := IntToStr(ReadInteger('URLS', 'MitNr', 7)); //Hvis inifil ikke findes bliver defaultværdien 7
      //Dine andre værdier kommer her
    end;
  finally
    MinIniFil.Free;
  end;
end;

end.
Avatar billede morten_s Nybegynder
04. september 2002 - 13:10 #5
Det sidste var et svar
Avatar billede zimp Nybegynder
04. september 2002 - 15:41 #6
Selv om du siger du har 'IniFiles' med i uses, så må det være der fejlen ligger... Dobbel check det lige ;)


Og...

Edit1 := IniFile.ReadInteger
              ('URLS', Edit1);

skal vist være

Edit1.Text := IntToStr(IniFile.ReadInteger
              ('URLS', Edit1));

hvis jeg ikke tager meget fejl.
Avatar billede dkn Nybegynder
04. september 2002 - 15:43 #7
ReadString består af flere paramenter!

ReadString('Section', 'name', 'Value if not found')
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester