/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
INI - SKOD
Fra : Mors


Dato : 17-12-02 00:29

Hej

Har lavet et prg. , hvor der skal læses / skrives til en ini fil
snip ...........

ini.Lines.Values['t9BIB'] := ExtractFilePath(findfil.FileName)
..........
...........
with t9inifil do
begin
writestring('T','t9BIB',ini.Lines.Values['t9BIB']);. (der bliver ingen værdi
læst over denne -------- HVORFOR IKKE )
..
..
END
Jeg læser en del andre værdier over , hvor der ingen problemer er med
opdateringen , det er kun den ene som skal fange "biblioteket"

mvh
Mors



 
 
Mors (17-12-2002)
Kommentar
Fra : Mors


Dato : 17-12-02 00:56

mig igen !!
har fundet ud af det må være : ExtractFilePath(findfil.FileName)
som er noget galt med .
hvis jeg skriver
edit1.text := ExtractFilePath(findfil.FileName)
og udskifter til
writestring('T','t9BIB',ini.edit1.text);.
kommer den ikke med endnu , MEN
hvis jeg skriver direkte ned i edit1.text , med mine små fingre virker det

Konklusion:
jeg skal fange filepath på en anden måde ------ HVORDAN ??

Mors

"Mors" <larsenofdenmark@hotmail.com> skrev i en meddelelse
news:3dfe61ce$0$35884$edfadb0f@dread15.news.tele.dk...
> Hej
>
> Har lavet et prg. , hvor der skal læses / skrives til en ini fil
> snip ...........
>
> ini.Lines.Values['t9BIB'] := ExtractFilePath(findfil.FileName)
> .........
> ..........
> with t9inifil do
> begin
> writestring('T','t9BIB',ini.Lines.Values['t9BIB']);. (der bliver ingen
værdi
> læst over denne -------- HVORFOR IKKE )
> .
> .
> END
> Jeg læser en del andre værdier over , hvor der ingen problemer er med
> opdateringen , det er kun den ene som skal fange "biblioteket"
>
> mvh
> Mors
>
>



René Allan Larsen (17-12-2002)
Kommentar
Fra : René Allan Larsen


Dato : 17-12-02 02:22

In article <3dfe6852$0$35875$edfadb0f@dread15.news.tele.dk>, Mors wrote:
> mig igen !!
> har fundet ud af det må være : ExtractFilePath(findfil.FileName)
> som er noget galt med .

Hvad er værdien af "findfil.FileName"? Hvad er "findfil"? En TSearchRec?
Hvis ja, så er der *aldrig* en sti med i navnet.

MVH, René


Lars B. Dybdahl (17-12-2002)
Kommentar
Fra : Lars B. Dybdahl


Dato : 17-12-02 11:54

Der mangler lidt flere informationer, før jeg kan hjælpe dig, men jeg kan
orientere dig om, hvordan jeg normalt skriver i ini filer:

uses
SysUtils,IniFiles;
var
ini:TIniFile;
begin
ini:=TIniFile.Create (extractfilepath(paramstr(0)));
try
ini.WriteString ('Sektion','Parameter','Vaerdi');
ini.UpdateFile;
finally
FreeAndNil (ini);
end;
end;

Hilsen,

Lars Dybdahl.

--

Dybdahl Engineering: http://dybdahl.dk/
Delphi brugergruppen DAPUG: http://dapug.dk/


Mors (18-12-2002)
Kommentar
Fra : Mors


Dato : 18-12-02 01:00

Hej
Prøver lige igen, om der skulle være mere hjæp at hente
Det der volder problemer er , når jeg via dialogboks henter "filepath" kan
den ikke skrives ned i min INI fil ( dog mener jeg at hvis den er tom kommer
det rigtige ind ), som check læser jeg de forkellige variabler i en
showmessage inden jeg prøver at skrive , men nej ----- den gamle filpath er
der stadigvæk..
(((( Det skulle være så let , men så er det faktisk blevet et træls
problem ))))

lige et tillægsspg. :
hvad er forskellen på : tmeminifile , tcustuminifile , tinifile ( jeg bruger
tinifile )

Prøver med lidt mere kode :

procedure TOpsaetning.FindClick(Sender: TObject);

Begin
If findBIB.Execute then
//ini.Lines.Values['t9BIB']
ed_t9bib.Text:= ExtractFilePath(findBIB.FileName); ****** Er det den
forkerte måde at trække BIB navnet ud/ind med ??????????
//ed_t9bib.Text := ini.Lines.Values['t9BIB'] ;
end;


procedure TOpsaetning.SmtphelpClick(Sender: TObject);
****************
begin

case smtphelp.ItemIndex of
0: ini.Lines.Values['SMTP']:= InputBox('Skriv din web udbyders udgående
Smtp ', 'SMTP :', 'Din_web_udbyders_SMTP');
1: ini.Lines.Values['SMTP']:='smtp.mail.dk';
2: ini.Lines.Values['SMTP']:='pasmtp.tele.dk';
3: ini.Lines.Values['SMTP']:='vip.cybercity.dk';
4: ini.Lines.Values['SMTP']:='smtpserver.get2net.dk';
5: ini.Lines.Values['SMTP']:='mail1.telia.com';
6: ini.Lines.Values['SMTP']:='mailrelay.uni2.dk';
7: ini.Lines.Values['SMTP']:='smtp.tiscali.dk';
8: ini.Lines.Values['SMTP']:='mail.mobilixnet.dk';
9: ini.Lines.Values['SMTP']:='mail.wanadoo.dk';
end;
ed_smtp.Text := ini.Lines.Values['SMTP'];
end;
****** VIRKER perfekt ************
**************
with myinifil do
begin
writestring('T','t9BIB',laest9bib); **virker ikke
//ini.Lines.Values['t9BIB']); *** VIRKER IKKE
writestring('T','t9BIB', 'hest'); **** VIRKER
writestring('T','SMTP',ini.Lines.Values['SMTP']); VIRKER
End;







"Lars B. Dybdahl" <Lars@dybdahl.dk> skrev i en meddelelse
news:3dff0246$0$149$edfadb0f@dread13.news.tele.dk...
> Der mangler lidt flere informationer, før jeg kan hjælpe dig, men jeg kan
> orientere dig om, hvordan jeg normalt skriver i ini filer:
>
> uses
> SysUtils,IniFiles;
> var
> ini:TIniFile;
> begin
> ini:=TIniFile.Create (extractfilepath(paramstr(0)));
> try
> ini.WriteString ('Sektion','Parameter','Vaerdi');
> ini.UpdateFile;
> finally
> FreeAndNil (ini);
> end;
> end;
>
> Hilsen,
>
> Lars Dybdahl.
>
> --
>
> Dybdahl Engineering: http://dybdahl.dk/
> Delphi brugergruppen DAPUG: http://dapug.dk/
>



Ulrik Vadstrup (18-12-2002)
Kommentar
Fra : Ulrik Vadstrup


Dato : 18-12-02 12:21

"Mors" <larsenofdenmark@hotmail.com> wrote in message
news:3dffba95$0$260$edfadb0f@dread12.news.tele.dk...
> Hej
> Prøver lige igen, om der skulle være mere hjæp at hente
> Det der volder problemer er , når jeg via dialogboks henter "filepath" kan
> den ikke skrives ned i min INI fil ( dog mener jeg at hvis den er tom
kommer
> det rigtige ind ), som check læser jeg de forkellige variabler i en
> showmessage inden jeg prøver at skrive , men nej ----- den gamle filpath
er
> der stadigvæk..
> (((( Det skulle være så let , men så er det faktisk blevet et træls
> problem ))))
>
> lige et tillægsspg. :
> hvad er forskellen på : tmeminifile , tcustuminifile , tinifile ( jeg
bruger
> tinifile )

Skal jeg ikke kunne sige i farten

>
> Prøver med lidt mere kode :
>
> procedure TOpsaetning.FindClick(Sender: TObject);
>
> Begin
> If findBIB.Execute then
> //ini.Lines.Values['t9BIB']
> ed_t9bib.Text:= ExtractFilePath(findBIB.FileName); ****** Er det den
> forkerte måde at trække BIB navnet ud/ind med ??????????
> //ed_t9bib.Text := ini.Lines.Values['t9BIB'] ;
> end;
>

Hvad er findBib - en dialog ? i så fald ser det rigtigt ud ?

ExtractFilePath gør jo følgende
c:\commen\controls\test.txt
vil ved
ExtractFilePath(c:\commen\controls\test.txt)
retunere
c:\commen\controls

> procedure TOpsaetning.SmtphelpClick(Sender: TObject);
> ****************
> begin
>
> case smtphelp.ItemIndex of
> 0: ini.Lines.Values['SMTP']:= InputBox('Skriv din web udbyders udgående
> Smtp ', 'SMTP :', 'Din_web_udbyders_SMTP');
> 1: ini.Lines.Values['SMTP']:='smtp.mail.dk';
> 2: ini.Lines.Values['SMTP']:='pasmtp.tele.dk';
> 3: ini.Lines.Values['SMTP']:='vip.cybercity.dk';
> 4: ini.Lines.Values['SMTP']:='smtpserver.get2net.dk';
> 5: ini.Lines.Values['SMTP']:='mail1.telia.com';
> 6: ini.Lines.Values['SMTP']:='mailrelay.uni2.dk';
> 7: ini.Lines.Values['SMTP']:='smtp.tiscali.dk';
> 8: ini.Lines.Values['SMTP']:='mail.mobilixnet.dk';
> 9: ini.Lines.Values['SMTP']:='mail.wanadoo.dk';
> end;
> ed_smtp.Text := ini.Lines.Values['SMTP'];
> end;
> ****** VIRKER perfekt ************
> **************
> with myinifil do
> begin
> writestring('T','t9BIB',laest9bib); **virker ikke
> //ini.Lines.Values['t9BIB']); *** VIRKER IKKE
> writestring('T','t9BIB', 'hest'); **** VIRKER
> writestring('T','SMTP',ini.Lines.Values['SMTP']); VIRKER
> End;

Hvordan sætter du din inifil op - peger den det rigtige sted
Har du kigget hvad der står i din INI fil
Har værdierne

//ini.Lines.Values['t9BIB']); *** VIRKER IKKE

Hvad vil du opnå med denne linie ? - vil du læse, skrive værdien ?

Hvis det er læse, bruger jeg normalt

ini.ReadString('SYSTEM', 'Brugernavn', 'Brugernavn ikke sat');

Jeg skal have lidt mere kode for at se hvor du går galt i byen - B.la hele
proceduren hvor du skriver til din INI fil.

ini:=TIniFile.Create (extractfilepath(paramstr(0)));

Er måske heller ikke den bedste løsning - jeg kan ikke lige se hva den vil
retunere, jeg bruger normalt

ini:=TIniFile.Create (extractfilepath(Application.exename))+'\Settings.ini';

Kan ikke lige huske om \ skal med foran \Settings.ini

Mvh
Ulrik

>
>
> "Lars B. Dybdahl" <Lars@dybdahl.dk> skrev i en meddelelse
> news:3dff0246$0$149$edfadb0f@dread13.news.tele.dk...
> > Der mangler lidt flere informationer, før jeg kan hjælpe dig, men jeg
kan
> > orientere dig om, hvordan jeg normalt skriver i ini filer:
> >
> > uses
> > SysUtils,IniFiles;
> > var
> > ini:TIniFile;
> > begin
> > ini:=TIniFile.Create (extractfilepath(paramstr(0)));
> > try
> > ini.WriteString ('Sektion','Parameter','Vaerdi');
> > ini.UpdateFile;
> > finally
> > FreeAndNil (ini);
> > end;
> > end;
> >
> > Hilsen,
> >
> > Lars Dybdahl.
> >
> > --
> >
> > Dybdahl Engineering: http://dybdahl.dk/
> > Delphi brugergruppen DAPUG: http://dapug.dk/
> >
>
>



//Overby (18-12-2002)
Kommentar
Fra : //Overby


Dato : 18-12-02 12:35

Slå op i hjælpen, der står det beskrevet.

Tmeminifile og tinifle er identiske, bortset fra at den første ligger i
hukommelsen og derved sparer med diskaktivitet.

Daniel



PA (22-12-2002)
Kommentar
Fra : PA


Dato : 22-12-02 14:57

"//Overby" <daniel_FJERNES_@_FJERNES_overbyhansen.dk> skrev i en meddelelse
news:atpmht$1lhd$1@news.cybercity.dk...
> Slå op i hjælpen, der står det beskrevet.
>
> Tmeminifile og tinifle er identiske, bortset fra at den første ligger i
> hukommelsen og derved sparer med diskaktivitet.

I Delphi 4 standard fik jeg konstateret at brugen af TInifile kan give
seriøse
problemer på NT systemer. TMemInifiles fixer dette. Jeg har fremover
altid brugt TMemInifiles.
--
PA



Mors (27-12-2002)
Kommentar
Fra : Mors


Dato : 27-12-02 00:43


Prøver igen med vedhæftet kode: ( når jeg prøver at trække bib stien fra
min button 'find' bliver der intet overført til min INI fil, men taster jeg
direkte i min edit virker det ------ jeg kan bare ikke se fejlen ( og
forskellen ???? )

unit opsaetningunit;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Grids, ExtCtrls, inifiles;

type
TOpsaetning = class(TForm)
Find: TButton;
finddir: TOpenDialog;
inimemo: TMemo;
ed_Cbib: TEdit;
LUK: TButton;

procedure FindClick(Sender: TObject);
procedure LUKClick(Sender: TObject);
private
{ Private declarations }

public
{ Public declarations }

end;

var
Opsaetning: TOpsaetning;
inifil : Tmeminifile;



implementation

{$R *.DFM}

procedure TOpsaetning.FindClick(Sender: TObject);

Begin
If finddir.Execute then
ed_Cbib.Text := ExtractFilePath(finddir.FileName);
inimemo.Lines.Values['CBIB'] := ed_Cbib.Text;
end;





procedure TOpsaetning.LUKClick(Sender: TObject);
begin

inimemo.Lines.Values['CBIB'] := ed_Cbib.Text;
showmessage(' * '+inimemo.Lines.Values['FIRMA']+' *
'+inimemo.Lines.Values['CBIB']);
inifil := Tmeminifile.Create('.\C5pak.ini');

with inifil do
begin
writestring('BIBLIOTEK','CBIB',inimemo.Lines.Values['CBIB']);
updatefile();
end;
inifil.free;


end;

end.



"Mors" <larsenofdenmark@hotmail.com> skrev i en meddelelse
news:3dfe61ce$0$35884$edfadb0f@dread15.news.tele.dk...
> Hej
>
> Har lavet et prg. , hvor der skal læses / skrives til en ini fil
> snip ...........
>
> ini.Lines.Values['t9BIB'] := ExtractFilePath(findfil.FileName)
> .........
> ..........
> with t9inifil do
> begin
> writestring('T','t9BIB',ini.Lines.Values['t9BIB']);. (der bliver ingen
værdi
> læst over denne -------- HVORFOR IKKE )
> .
> .
> END
> Jeg læser en del andre værdier over , hvor der ingen problemer er med
> opdateringen , det er kun den ene som skal fange "biblioteket"
>
> mvh
> Mors
>
>



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste