Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem beim Laden mit Ini's (https://www.delphipraxis.net/63988-problem-beim-laden-mit-inis.html)

mOzZzI 25. Feb 2006 19:10


Problem beim Laden mit Ini's
 
Hai,
ich versuche mein Programm beim starten die Height und Width aus einer INI Datei zu lesen...
Leider bekomme ich immer eine EAccessViolation...
Warum?

Code:
Delphi-Quellcode:
  ForceDirectories(ExtractFilePath(ParamStr(0))+'Settings');
  ini.Create(ExtractFilePath(ParamStr(0))+'Settings'+'config.ini'); //create iniFile
 try
  Form1.Width := ini.ReadInteger('POSITION', 'WIDTH', 0); //load form settings
  Form1.Height := ini.ReadInteger('POSITION', 'HEIGHT', 0); //load form settings
 finally
  ini.Free;
Gruß Philipp

Sharky 25. Feb 2006 19:13

Re: Problem beim Laden mit Ini's
 
Hai m0zZzI,

so wie ich es sehe machst Du einen Fehler beim erzeugen deiner Instanz von TIniFiles.

es muss
Delphi-Quellcode:
  ini := TIniFile.Create();
und nicht
Delphi-Quellcode:
ini.Create();
heissen.

EDIT
Und Du solltest auch mal prüfen wie Du den Pfad zu deiner INI zusammen setzt ;-)

mOzZzI 25. Feb 2006 19:14

Re: Problem beim Laden mit Ini's
 
:wall: *monstermäßig auf kopf hau* :wall:

Stimmt ja!! thx Sharky

marabu 25. Feb 2006 19:15

Re: Problem beim Laden mit Ini's
 
Und den Namen deiner Ini-Datei bildest du falsch:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  ForceDirectories(ExtractFilePath(ParamStr(0))+'Settings');
  with TIniFile.Create(ExtractFilePath(ParamStr(0))+'Settings\config.ini') do
  try
    Width := {ini.}ReadInteger('POSITION', 'WIDTH', Width);
    Height := {ini.}ReadInteger('POSITION', 'HEIGHT', Height);
  finally
    Free;
  end;
end;
Grüße vom marabu

EDIT: ini muss weg bei meiner Schreibweise - aber der Default-Wert ist wichtig...

mOzZzI 25. Feb 2006 19:22

Re: Problem beim Laden mit Ini's
 
Leider bringt er immer noch die Fehlermeldung :gruebel:

Delphi-Quellcode:
var ini: TIniFile;
begin
  ForceDirectories(ExtractFilePath(ParamStr(0))+'Settings');
  with TiniFile.Create(ExtractFilePath(ParamStr(0))+'Settings\'+'config.dat') do //create iniFile
 try
  Form1.Width := ini.ReadInteger('POSITION', 'WIDTH', 0); //load form settings
  Form1.Height := ini.ReadInteger('POSITION', 'HEIGHT', 0); //load form settings
 finally
  ini.Free;
end;

ManuMF 25. Feb 2006 19:26

Re: Problem beim Laden mit Ini's
 
Das war jetzt ein bisschen Mischmasch ;-)

Delphi-Quellcode:
begin
  ForceDirectories(ExtractFilePath(ParamStr(0))+'Settings');
  with TiniFile.Create(ExtractFilePath(ParamStr(0))+'Settings\'+'config.dat') do //create iniFile
    try
      Form1.Width := ReadInteger('POSITION', 'WIDTH', 0); //load form settings
      Form1.Height := ReadInteger('POSITION', 'HEIGHT', 0); //load form settings
    finally
      Free;
    end;
end;
oder besser:

Delphi-Quellcode:
var ini: TIniFile;
begin
  ForceDirectories(ExtractFilePath(ParamStr(0))+'Settings');
  ini := TIniFile.Create(ExtractFilePath(ParamStr(0))+'Settings\'+'config.dat');
  with ini do
    try
      Form1.Width := ReadInteger('POSITION', 'WIDTH', 0); //load form settings
      Form1.Height := ReadInteger('POSITION', 'HEIGHT', 0); //load form settings
    finally
      Free;
    end;
end;
Gruß,
ManuMF

mOzZzI 25. Feb 2006 19:29

Re: Problem beim Laden mit Ini's
 
´Dank sei´ ManuMF :wink:
Klappt!! Thx


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz