Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Ini Problem, wo liegt der Fehler? (https://www.delphipraxis.net/110996-ini-problem-wo-liegt-der-fehler.html)

FileOwner 27. Mär 2008 19:42


Ini Problem, wo liegt der Fehler?
 
Wo liegt der Fehler ich sitz schon seit ner Stunde drann und komm nich weiter

Delphi-Quellcode:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
var ini: TIniFile;
begin
 ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+
    'server.ini');

    ini.WriteString('Connection','ServerIP',Form2.ClientSocket1.Host);
    ini.WriteString('Connection','Port',inttostr(Form2.ClientSocket1.Port));
    ini.WriteString('User','Nickname',Nickname);
    ini.Free;
end;

procedure TForm2.FormShow(Sender: TObject);
var ini: TIniFile;
begin
  ini:=TIniFile.Create('server.ini');
  try
  clientsocket1.Host:=ini.Readstring('Connection','ServerIP', '');
  Nickname:=ini.Readstring('User','Nickname', '');
  clientsocket1.Port:=ini.ReadInteger('Connection','Port',0);
  finally
    ini.free;
    sleep(450);
    Timer4.Enabled := true;
end;

INIFILE:

[Connection]
ServerIP=192.168.0.133
Port=99
[User]
Nickname=Oo



Bitte helft mir

DeddyH 27. Mär 2008 19:44

Re: Ini Problem, wo liegt der Fehler?
 
Außer, dass evtl. 2 verschiedene Pfade (und keine try-finally-Blöcke) benutzt werden, fällt mir nichts auf.

mkinzler 27. Mär 2008 19:44

Re: Ini Problem, wo liegt der Fehler?
 
Was geht nicht, das Erzeugen oder das Einladen?

Matze 27. Mär 2008 19:45

Re: Ini Problem, wo liegt der Fehler?
 
Hallo,

was funktioniert denn nicht?

Du solltets übrigens generell absolute Pfaden nutzen, da das Arbeitsverzeichnis nicht zwangsläufig dein Programmverzeichnis ist. Relative und absolute Pfade zu mischen ist sowieso nicht sinnvoll.

Edit: Mist, Deddy ist heute verdammt schnell. *g*

toms 27. Mär 2008 19:45

Re: Ini Problem, wo liegt der Fehler?
 
Hallo, vielleicht greifst du nicht auf dieselbe Ini zu.
Im Create(...) schreibst du einmal den vollen Pfad und einmal nicht.

DeddyH 27. Mär 2008 19:46

Re: Ini Problem, wo liegt der Fehler?
 
[OT] Matze, ich bin auch ganz erstaunt :D [/OT]

bigben37 27. Mär 2008 19:46

Re: Ini Problem, wo liegt der Fehler?
 
Zitat:

Delphi-Quellcode:
 clientsocket1.Port:=ini.ReadInteger('Connection','Port',0);

Kann es sein, dass es
Delphi-Quellcode:
clientsocket1.Port:=StrToInt(ini.ReadString('Connection', 'Port',''));
heißen muss, da du es auch als String speicherst?

DeddyH 27. Mär 2008 19:48

Re: Ini Problem, wo liegt der Fehler?
 
Hallo bigben, das ist reine Interpretationssache, in einer Ini stehen immer Strings.

Die Muhkuh 27. Mär 2008 19:51

Re: Ini Problem, wo liegt der Fehler?
 
Nach dem finally-Block fehlt noch ein end.

@bigben:
Biberach (Baden) oder Biberach an der Riß?

mkinzler 27. Mär 2008 19:52

Re: Ini Problem, wo liegt der Fehler?
 
Oder (HN-)Biberach (Württemberg)

bigben37 27. Mär 2008 19:53

Re: Ini Problem, wo liegt der Fehler?
 
@DeddyH

ok, das wusste ich nicht

@Die Muhkuh

[OT]Biberach(Baden)[/OT]

Die Muhkuh 27. Mär 2008 19:55

Re: Ini Problem, wo liegt der Fehler?
 
Zitat:

Zitat von bigben37
[OT]Biberach(Baden)[/OT]

[OT] Ein Fast-Nachbar :mrgreen: *Vom "Berg" runterwink :hi: *[/OT]

SirThornberry 27. Mär 2008 19:57

Re: Ini Problem, wo liegt der Fehler?
 
Hallo FileOwner, gib deinem Beitrag bitte einen aussagekräftigen Titel :) Das hat den Vorteil das alle sofort wissen worum es hier geht und somit die Leute die Ahnung vom Thema haben es auch anschauen. Zudem hat es den Vorteil das andere mit dem gleichen Problem später über die Suchfunktion auch schneller dieses Thema hier finden und somit auch die Lösung.

Zum ändern des Titels nutze einfach http://www.delphipraxis.net/template.../icon_edit.gif über dem ersten Beitrag von dir

DeddyH 27. Mär 2008 20:01

Re: Ini Problem, wo liegt der Fehler?
 
Außerdem wäre es sinnvoll, den "Fehler" mal zu beschreiben (meckert der Compiler, macht das Prog nicht, was es soll...) :zwinker:

Die Muhkuh 27. Mär 2008 20:04

Re: Ini Problem, wo liegt der Fehler?
 
Zitat:

Zitat von DeddyH
(meckert der Compiler, macht das Prog nicht, was es soll...) :zwinker:

Fehlerbeschreibung: Das Prog macht nicht, was es soll :mrgreen:

*SCNR*

DP-Maintenance 27. Mär 2008 20:04

DP-Maintenance
 
Dieses Thema wurde von "SirThornberry" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.

FileOwner 27. Mär 2008 20:31

Re: Ini Problem, wo liegt der Fehler?
 
Lag wohl scheinbar wirklich am Pfad, das ganze sieht jetzt so aus:
Delphi-Quellcode:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
var ini: TIniFile;
begin
 ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+
    'c:\server.ini');

    ini.WriteString('Connection','ServerIP',Form2.ClientSocket1.Host);
    ini.WriteString('Connection','Port',inttostr(Form2.ClientSocket1.Port));
    ini.WriteString('User','Nickname',Nickname);
    ini.Free;
end;

procedure TForm2.FormShow(Sender: TObject);
var ini: TIniFile;
begin
  ini:=TIniFile.Create('c:\server.ini');
  try
  clientsocket1.Host:=ini.Readstring('Connection','ServerIP', '');
  Nickname:=ini.Readstring('User','Nickname', '');
  clientsocket1.Port:=ini.ReadInteger('Connection','Port',0);
  finally
    ini.free;
    Timer4.Enabled := true; end
end;
Nur jetzt taucht das Problem auf das die server.ini nicht gespeichert wird :(

Danke @ alle und das ihr auch Neulingen helft ;)

Matze 27. Mär 2008 20:35

Re: Ini Problem, wo liegt der Fehler?
 
Hallo

Delphi-Quellcode:
ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+
    'c:\server.ini');
Das ergibt dann ein Pfad wie C:\Programme\Projekt\c:\server.ini.
Das ist nicht das, was du willst. ;)

Klaus01 27. Mär 2008 20:37

Re: Ini Problem, wo liegt der Fehler?
 
eventuell so:
Delphi-Quellcode:
ini:=TIniFile.create('c:\server.ini');
obwohl Du Dir da im klaren sein solltest, dass nicht unter jedem OS
etwas auf c:\ gespeichert werden kann.

Grüße
Klaus

mkinzler 27. Mär 2008 20:41

Re: Ini Problem, wo liegt der Fehler?
 
Delphi-Quellcode:
ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+'server.ini');

Die Muhkuh 27. Mär 2008 20:45

Re: Ini Problem, wo liegt der Fehler?
 
Und wenn man es richtig richtig machen möchte, dann schreibt man das ganze in das Benutzerprofil, den dort hat der Benutzer Schreibrechte. :)

SirThornberry 28. Mär 2008 06:59

Re: Ini Problem, wo liegt der Fehler?
 
Zitat:

Zitat von SirThornberry
Hallo FileOwner, gib deinem Beitrag bitte einen aussagekräftigen Titel :) Das hat den Vorteil das alle sofort wissen worum es hier geht und somit die Leute die Ahnung vom Thema haben es auch anschauen. Zudem hat es den Vorteil das andere mit dem gleichen Problem später über die Suchfunktion auch schneller dieses Thema hier finden und somit auch die Lösung.

Zum ändern des Titels nutze einfach http://www.delphipraxis.net/template.../icon_edit.gif über dem ersten Beitrag von dir

Bitte ignoriere diesen Beitrag nicht und halte dich entsprechend an die Forenregeln denen du bei der Anmeldungen zugestimmt hast. Dein jetziger Titel sagt nur aus "ini" was nicht wirklich aussagekräftig ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:04 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