Autor Beitrag
N47R0N
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 134



BeitragVerfasst: Mi 20.04.05 18:17 
So hier mal wieder bestimmt eine ziemlich Doofe Frage von mir :D

Ich weiß ja wie man eine INI erstellen lässt und etwas rein schreibt , nur muss ich jetzt bestimmte abläufe in der richtigen reienfolge schreiben wie z.B

ausblenden Quelltext
1:
2:
[information]
Host=


Das soll dann so gehen , wenn ich auf einen Button klicke soll eine INI erstellt werden
( das habe ich schon hinbekommen ) , damm soll genau der Code daoben reingeschrieben werden und das was ich in Edit1 geschrieben habe noch hinter Host angehengt werden.

Hoffe ich habe das jetzt verständlich ausgedrückt .
Blackheart
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 164

ME
D3Prof.-D6Standard
BeitragVerfasst: Mi 20.04.05 18:22 
ausblenden Delphi-Quelltext
1:
Inifile.writestring('information','Host',Edit1.Text);					
Blackheart
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 164

ME
D3Prof.-D6Standard
BeitragVerfasst: Mi 20.04.05 18:58 
Gibt in deiner Ini Datei aus
[information]
Host= Dein String
Host1=Dein String
Host2= Dein String

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
uses ...
inifiles

procedure TForm1.Button1Click(Sender: TObject); //Schreiben
var
ini:tinifile;
begin
  Ini:=tinifile.create(extractFilePath(ParamStr(0))+'Test.ini'); // Pfad wo deine Exe liegt
  Ini.writestring('information','Host',Edit1.Text);
  Ini.writestring('information','Host1',Edit2.Text);
  Ini.writestring('information','Host2',Edit3.Text);
ini.Free;
end;

procedure TForm1.Button2Click(Sender: TObject); //Lesen
var
ini:tinifile;
begin
  Ini:=tinifile.create(extractFilePath(ParamStr(0))+'Test.ini'); // Pfad wo deine Exe liegt
  Edit1.Text:=ini.readstring('information','Host','Kein Wert');
  Edit2.Text:=ini.readstring('information','Host1','Kein Wert');
  Edit3.Text:=ini.readstring('information','Host2','Kein Wert');
ini.Free;
N47R0N Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 134



BeitragVerfasst: Mi 20.04.05 18:59 
Danke erstmal

Wie soll ich das jetzt in den jetzigen Code reinbekommen . Sorry bin aber noch kompletter Anfänger.

Mein Code:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TForm1.Button1Click(Sender: TObject);
var
F: TextFile;
S: string;
begin
s := Edit1.Text;
AssignFile(F, 'info.ini');
rewrite(f);
Writeln(F, S);
CloseFile(F);
Form3.ShowModal;
close;
end;


Danke schonmal.
Tobias1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 454

Win 98, XP Prof
D3 Prof, D2005 Prof
BeitragVerfasst: Mi 20.04.05 19:06 
Möchtest du eine normale Datei erstellen die Einfach die Endung .ini hat oder willst du die Inifunktionen nutzen(z.B: Ini.writestring('information','Host1',Edit2.Text); )?

_________________
Auch das schlechteste Buch hat seine gute Seite: die letzte. (John Osborne)
Blackheart
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 164

ME
D3Prof.-D6Standard
BeitragVerfasst: Mi 20.04.05 19:29 
Gib mal an was Du so ungefähr vor hast ?
Den Code den Du jetzt hast erstellt eigentlich ein Textdatei.
N47R0N Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 134



BeitragVerfasst: Mi 20.04.05 20:57 
Mein jetziger Code.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
s := Edit3.Text;
s := Edit2.Text + '' + Edit1.text;
AssignFile(F, 'msnmsgs.ini');
rewrite(f);
Writeln(F, S);
CloseFile(F);
Form3.ShowModal;
close;
end;


Es wird hier eine INI erstellt .

Im Edit3 steht z.B : [lala]
in Edit2 steht z.B : Host=
und in Edit3 z.B : blablabla

Wenn ich nun auf Enter drücke will ich das die Daten so in der erstellten INI stehen :
ausblenden Quelltext
1:
2:
[lala]
Host=blablabla
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Mi 20.04.05 21:37 
autsch, jetzt weiss ich auch warum das bei dir nie geklappt hat.

Mach das genauso wie die anderen oben erklärt haben. Du brauchst die Ini nicht selbst formatieren. Genau das macht ja WriteString für dich.

mit ini := TIniFile.Create('c:\inifile.ini') wird die Instanz erzeugt. Danach kannst du auf das Ini-Objekt ganz einfach zugreifen, z.B. mit writestring('BlockA', 'UnterBlockA1', 'Hallo').

Jetzt muss auf deiner Festplatte die Datei 'c:\inifile.ini' existieren. Und drin stehen muss folgendes:

ausblenden Quelltext
1:
2:
[BlockA]
UnterBlockA=Hallo


Wenn du es jetzt immernoch nicht kapierst solltest du dir ein anderes hobby suchen ;) oder einfach mal das hirn einschalten und das grosse Brett wegnehmen
N47R0N Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 134



BeitragVerfasst: Mi 20.04.05 21:51 
Mein Code
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TForm1.Button1Click(Sender: TObject);
var
ini : inifiles.
begin
ini := TIniFile.Create('msnmsgs.ini')
writestring('msnmsgs', 'Host=', 'Edit1.Text');
ini.Free;
Form3.ShowModal;
close;
end;


Der fehler

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
Erzeugen
  [Fehler] Unit1.pas(40): Undefinierter Bezeichner: 'begin'
  [Fehler] Unit1.pas(41): ';' erwartet, aber ':=' gefunden
  [Fehler] Unit1.pas(41): ',' oder ':' erwartet, aber '.' gefunden
  [Fehler] Unit1.pas(42): ',' oder ')' erwartet, aber '(' gefunden
  [Fehler] Unit1.pas(42): Bezeichner erwartet, aber String-Konstante gefunden
  [Fehler] Unit1.pas(43): Bezeichner redefiniert: 'ini'
  [Fehler] Unit1.pas(44): ',' oder ':' erwartet, aber '.' gefunden
  [Fehler] Unit1.pas(45): ',' oder ':' erwartet, aber ';' gefunden
  [Fehler] Unit1.pas(46): Typ erwartet, aber 'END' gefunden
  [Fataler Fehler] Project1.dpr(8): Verwendete Unit 'Unit1.pas' kann nicht compiliert werden


Nunja ein neues Hobby möchte ich mir nich suchen :lol: .
Blackheart
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 164

ME
D3Prof.-D6Standard
BeitragVerfasst: Mi 20.04.05 21:51 
Ich Vermute das soll keine Ini sein dann so mit deinem Code.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.Button1Click(Sender: TObject);
var
 F: TextFile;
 S,T,U: string;
begin
  S := Edit1.Text; //[lala]
  T := Edit2.Text; // Host
  U := Edit3.Text; // blablabla
  AssignFile(F, 'info.ini');
  rewrite(f);
  Writeln(F, S); //[lala]
  Writeln(F, T+'='+U);// Host + = + blablabla
  CloseFile(F);
end;
N47R0N Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 134



BeitragVerfasst: Mi 20.04.05 22:08 
So jetzt geht es .

DANKEEEE!!!!
Blackheart
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 164

ME
D3Prof.-D6Standard
BeitragVerfasst: Mi 20.04.05 22:23 
Falls es doch ne Ini sein soll.
inifiles kommt oben in die Uses Liste !!!!
Und du musst auf korekte Schreibweise achten zB. Befehle mit ; abschließen
sind manchmal Flüchtigkeitsfehler .


ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, inifiles;

procedure TForm1.Button1Click(Sender: TObject); //Schreiben  
var  
ini:tinifile;  
begin  
  Ini:=tinifile.create(extractFilePath(ParamStr(0))+'msnmsgs.ini'); // Pfad wo deine Exe liegt  
  Ini.writestring('msnmsgs','Host',Edit1.Text);  
  ini.Free;  
end;


Moderiert von user profile iconraziel: Color- durch Highlight-Tags ersetzt.