AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ini files funktionieren nicht

Ein Thema von maddins · begonnen am 2. Apr 2007 · letzter Beitrag vom 6. Apr 2007
Antwort Antwort
Seite 1 von 2  1 2      
maddins

Registriert seit: 3. Nov 2006
16 Beiträge
 
#1

ini files funktionieren nicht

  Alt 2. Apr 2007, 00:52
hallo,

ich muss bei meinem programm daten aus einer ini-datei lesen. leider funktioniert das nicht so, wie ichs mir vorgestellt hab. genauer gesagt: es passiert GARNICHTS.

eine fertige ini datei mit werten hatte ich schon und hab dazu schnell noch ne procedure geschrieben, die dann aber keine testwerte ausgespuckt hat. auch eine überprüfung mit sectionexists(..) brachte vorerst keine positiven werte. also hab ich mir gedacht, lass ich mir die datei einfach vom programm schreiben. dazu folgende procedure:

Code:
procedure tform1.writeini;
 var ini:Tinifile;
begin
  ini:=TIniFile.Create('cfg.ini') ;

  ini.WriteString('Benutzer','Name1','Mustermann');
  ini.WriteString('Benutzer','Name2','Meier');
  ini.Free;

end;
in den uses hab ich IniFiles drin...

zu meinem erstaunen musste ich feststellen, das auch hier nichts passierte.

was hab ich falsch gemcaht? hab ich was vergessen?

danke für die hilfe

martin
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 01:12
Wenn du den Dateinamen so angibst, dann speichert er die Ini-Datei ins Windowsverzeichnis. Vielleicht hast du sie deshalb nicht entdeckt...?
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 01:27
Hi,

wenn du die INI im Verzeichnis deines Programms erstellen möchtest, und du Schreibrechte besitzt dann kannst du es so machen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var ini:Tinifile;
begin
  ini:=TIniFile.Create(ExtractFilepath(paramstr(0))+ 'cfg.ini') ;
  ini.WriteString('Benutzer','Name1','Mustermann');
  ini.WriteString('Benutzer','Name2','Meier');
  ini.Free;
end;
Bei mir ging es dann.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 01:36
Oder noch einfacher:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var ini:Tinifile;
begin
  ini:=TIniFile.Create('.\cfg.ini') ;
  ini.WriteString('Benutzer','Name1','Mustermann');
  ini.WriteString('Benutzer','Name2','Meier');
  ini.Free;
end;
  Mit Zitat antworten Zitat
Benutzerbild von cruiser
cruiser

Registriert seit: 23. Dez 2003
Ort: Königsbrück/Sachsen
455 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 02:26
'.\cfg.ini' ist nicht empfehlenswert. Dann speichert er ins aktuelle Ausführungsverzeichnis, was nicht zwingend das Verzeichnis der exe ist
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 07:31
Besser ist es aber die ini-Datei ins Profilverzeichnis(APPDATA) des Benutzers oder unter "Alle Benutzer" zu speichern
Markus Kinzler
  Mit Zitat antworten Zitat
maddins

Registriert seit: 3. Nov 2006
16 Beiträge
 
#7

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 08:21
boah verdammt... wer hat sich denn sowas ausgedacht!
wenn ich als exe ne datei erstellen würde, bei der kein pfad oder ähnliches davor steht, dann pack ich mir die doch ins das verzeichnis, wo ich selber bin...

ich weiß auch nicht, warum das immer alles so umnständlich sein muss.

jedenfalls danke an alle für die schnelle hilfe, funktioniert bestens.

martin
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 09:29
Normalerweise funktioniert das mit ParamStr, liefert Dir das Verzeichnis deiner Exe - (unter Vista wohl nicht mehr wegen den Schreibrechten).
Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'cfg.ini');
Blackheart
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#9

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 09:34
Zitat von Blackheart:
Normalerweise funktioniert das mit ParamStr, liefert Dir das Verzeichnis deiner Exe - (unter Vista wohl nicht mehr wegen den Schreibrechten).
Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'cfg.ini');
Doch funktioniert unter Vista aber ganz verrückt.
Es wird in User\Applicationsdatata\... oder so ähnlich ein virtuelles Verzeichnis angelegt und dort steht dann die Inifile.


Gruß
Peter
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: ini files funktionieren nicht

  Alt 2. Apr 2007, 09:42
@hanspeterAuch mit ParamStr oder muss der komplette Pfad User\Applicationsdatata\... bla angeben werden ?
Blackheart
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:48 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