Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi EIniFileException bei Schreiben in Ini-File (https://www.delphipraxis.net/153283-einifileexception-bei-schreiben-ini-file.html)

hans ditter 27. Jul 2010 21:15

Delphi-Version: 2005

EIniFileException bei Schreiben in Ini-File
 
Hallo liebe DP,

ich hab schonmal die Suche und Google angestrengt, aber irgendwie hab ich bis jetzt noch nix gefunden, dass geholfen hat.
Ich möchte in eine Ini-Datei mehrere neue Einträge vornehmen, aber jedesmal, wenn ich einen Versuch starte, dass zu tun, kommt die Debugger-Exception "Es ist eine Exception der Klasse EIniFileException mit der Meldung 'In Dateipfad/kontoinfo.ini kann nicht geschrieben werden' aufgetreten."

Hier nochmal der Delphicode:
Delphi-Quellcode:
procedure TForm2.btnOkClick(Sender: TObject);
var ini: TIniFile;
    aktID: integer;
begin
  ini:=TIniFile.Create('[I]Dateipfad[/I]\kontoinfo.ini');
  try
    aktID:=ini.ReadInteger('ID','aktuell',0);

    ini.WriteString('Art',IntToStr(aktID + 1),rdgEinnAusg.Items.Text);
    ini.WriteDate('Datum',IntToStr(aktID + 1),DateTimePicker1.Date);
    ini.WriteString('Kurzbeschreibung',IntToStr(aktID + 1),edtShortDesc.Text);
    ini.WriteString('Kategorie',IntToStr(aktID + 1),combKategorie.Text);
    ini.WriteString('Beschreibung',IntToStr(aktID + 1),memBeschreibung.Text);
  finally
    ini.Free;
  end;
end;
Ich versteh das irgendwie nicht. Falls jemand noch was passendes in der Suche findet, gerne Bescheid geben. Hoffe es kann mir jemand helfen...

Danke schonmal im Vorraus,
hans ditter

mkinzler 27. Jul 2010 21:17

AW: EIniFileException bei Schreiben in Ini-File
 
Ist die Ini schreibgeschützt?
Hast du Schreibrechte in dem Verzeichnis?
Wie sieht der Pfad aus (absolut/relativ)?

hans ditter 27. Jul 2010 21:26

AW: EIniFileException bei Schreiben in Ini-File
 
Hm, also ich hab grad nochmal was probiert:
Delphi-Quellcode:
ini:=[B]TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'kontoinfo.ini'[/B]);
jetzt hat's gefunzt. Aber ich versteh nicht ganz, warum das nur mit so einer variablen Angabe funktioniert und nicht mit einer statischen Angabe...

hans ditter 27. Jul 2010 21:27

AW: EIniFileException bei Schreiben in Ini-File
 
Zitat:

Zitat von mkinzler (Beitrag 1037967)
Ist die Ini schreibgeschützt?
Hast du Schreibrechte in dem Verzeichnis?
Wie sieht der Pfad aus (absolut/relativ)?

1. Nein, ist nicht geschützt.
2. Ja, hab ich.
3. Ist absolut

Chemiker 27. Jul 2010 21:35

AW: EIniFileException bei Schreiben in Ini-File
 
Hallo hans dritter,

Dateipfad\kontoinfo.ini

mit einem statischen Path funktioniert das auch, aber Dein Path ist nicht gültig. Da fehlen wohl einige Angaben z.B. Laufwerk usw.

Bis bald Chemiker

hans ditter 27. Jul 2010 21:37

AW: EIniFileException bei Schreiben in Ini-File
 
hm, eigentlich nicht, der Pfad sah nach dem Motto aus:

D:\<Name>\Informatik\<Name>\KontoFIX\kontoinfo.ini

also ist eigentlich alles da, was man für einen absoluten Pfad braucht. Kann natürlich auch sein, dass ich da ne falsche Vorstellung hab von einem absoluten Pfad...

Chemiker 27. Jul 2010 22:03

AW: EIniFileException bei Schreiben in Ini-File
 
Hallo hans ditter,

sind die Verzeichnisse auch alle vorhanden?

Bis bald Chemiker

idefix2 27. Jul 2010 22:08

AW: EIniFileException bei Schreiben in Ini-File
 
Lass Dir einmal testweise die Strings für den Pfad/Namen in beiden Varianten ausgeben, da ist sicher irgend ein Unterschied

hans ditter 27. Jul 2010 22:58

AW: EIniFileException bei Schreiben in Ini-File
 
@Chemiker Ja, zumindest sehe ich die im Windwos Explorer
@Idefix2 Werd ich mal machen

hans ditter 27. Jul 2010 23:04

AW: EIniFileException bei Schreiben in Ini-File
 
also, ich habe gerade mal gemacht, was Idefix vorgeschlagen hatte, und soweit ich das in Erinnerung habe, hatte ich den Pfad genauso angegeben.... naja, auf jeden Fall ist das Problem, vielen Dank! :thumb:

DeddyH 28. Jul 2010 08:55

AW: EIniFileException bei Schreiben in Ini-File
 
Um den Fehler noch einmal deutlich zu machen:
Delphi-Quellcode:
ini:=TIniFile.Create('Dateipfad\kontoinfo.ini');
//Ergibt "Dateipfad\kontoinfo.ini"

ini:=TIniFile.Create(Dateipfad + '\kontoinfo.ini');
//Ergibt <Inhalt der Variablen Dateipfad>\kontoinfo.ini
Ein konstanter String wird ja nicht verändert (wieso sollte er auch?).

hans ditter 28. Jul 2010 15:58

AW: EIniFileException bei Schreiben in Ini-File
 
Hallo liebe DP,
ich bin's nochmal, diesmal mit 'ner anderen Frage...:glaskugel:

Ich schreibe gerade an einem Kontoprogramm, wo man seine Ausgaben und Einnahmen eintrage kann, seinen Kontostand etc. sieht. Ich möchte nun in der unteren Hälfte der Form ein Bereich machen, in dem Panels angezeigt werden, auf denen wiederum versch. Labels angezeigt werden.
Allerdings müssen die Panels ja während der Laufzeit erzeugt werden.
Wie ich EIN Panel dynamisch erzeuge, ist mir klar, aber wie ich ein Panel, auf dem noch mehrere Labels sind, während der Laufzeit erzeuge, weiß ich nicht.
Ach ja, dass ist vlt noch wichtig: Die Panels sollen logischerweise alle gleich aussehen, also soll immer das gleiche Panel mit anderem Namen eingefügt werden.

LG, hans ditter

Klaus01 28. Jul 2010 16:00

AW: EIniFileException bei Schreiben in Ini-File
 
Hallo,

kannst Du zu diesem neuen Thema bitte eine neue Anfrage starten.

Grüße
Klaus

mkinzler 28. Jul 2010 16:01

AW: EIniFileException bei Schreiben in Ini-File
 
Neue Frage -> Neuer Thread

hans ditter 28. Jul 2010 16:03

AW: EIniFileException bei Schreiben in Ini-File
 
hey, ok, sorry... habt ihr natürlich recht.
Würd mich über Antworten von euch im neuen Thema freuen! Danke!

hans ditter 28. Jul 2010 16:06

AW: EIniFileException bei Schreiben in Ini-File
 
hier der Link zu dem neuen Thema:
http://www.delphipraxis.net/153305-p...ml#post1038171


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:28 Uhr.

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