Avatar billede ole_hj Juniormester
26. december 2004 - 12:29 Der er 15 kommentarer og
1 løsning

Gem i programmet

jeg er igang med at lave et program hvor jeg skal kunne gemme de dataer som er blevet tastet ind, men jeg kan ikke få de koder til at hvirke, hvilken kode kan jeg bruge.
Avatar billede ducks Nybegynder
26. december 2004 - 14:17 #1
"Gem i programmet"

Du kan ikke gemme i selve exe filen, du er nødt til at bruge en database, text fil, ini fil, registreringsdatabasen osv. til at gemme oplysningerne.

Jeg kan ikke selv finde ud af Delphi, så du må prøve google indtil videre
Avatar billede kammeyer Nybegynder
26. december 2004 - 14:30 #2
Fortæl lidt mere - typen af data, længden af de indtastede data (minimum og maximum) osv.
Avatar billede stone Forsker
26. december 2004 - 16:34 #3
hvis det er data fra memo kan du gemme - hente data

//gemme data
Memo1.Lines.SaveToFile('c:\temp\test.txt');

//hente data
Memo1.Lines.LoadFromFile('c:\temp\test.txt');

hvis det er edit felter som du vil gemme - hente i en ini fil
husk uses "inifiles"

procedure TForm1.Button1Click(Sender: TObject);
var
  IniFile : TIniFile;
  begin
  IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');

  IniFile.WriteString('Settings','edit1''edit2',(edit1.Text+edit2.text));
  end;

procedure TForm1.Button2Click(Sender: TObject);
var
  IniFile : TIniFile;
begin
IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');
edit1.Text + edit2.Text := IniFile.readString('Settings','edit1'+'edit2','');
  end;
end.
Avatar billede ole_hj Juniormester
26. december 2004 - 20:44 #4
ja det er editterne som skal gemmes i programmet og jeg har også prøvet hvad der står men jeg kan ikke få det til at virke
Avatar billede stone Forsker
26. december 2004 - 21:52 #5
hvilken fejlmelding får du?
Avatar billede stone Forsker
26. december 2004 - 22:03 #6
prøv igen her kan du gemme 3 edit
husk uses "inifiles"

//gem
procedure TForm1.Button1Click(Sender: TObject);
var
  IniFile : TIniFile;
begin
  IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');

  IniFile.WriteString('Settings','edit1',edit1.Text);
begin
  IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');

  IniFile.WriteString('Settings','edit2',edit2.Text);
begin
  IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');

  IniFile.WriteString('Settings','edit3',edit3.Text);
inifile.free
end;
end;
end;

//hent

procedure TForm1.Button2Click(Sender: TObject);
var
  IniFile : TIniFile;
begin
IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');
edit1.Text := IniFile.readString('Settings','edit1','');
begin
IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');
edit2.Text := IniFile.readString('Settings','edit2','');
begin
IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');
edit3.Text := IniFile.readString('Settings','edit3','');
inifile.free;
end;
end;
end;
Avatar billede ole_hj Juniormester
27. december 2004 - 10:44 #7
jeg har læst noget om at man kan gemme det hele ved hjælp af registry og at det hele skulle kunne gemmes jeg har været inde på udvikleren, men jeg kan heler ikke få et til at virke der kommer der to fejl
jeg få disse fejl frem når jeg skal køre programmet

[Error] Unit1.pas(43): Statement expected but 'PROCEDURE' found
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
Avatar billede stone Forsker
27. december 2004 - 13:32 #8
prøv lige mit sidste eksempel med at gemme indhold fra 3 edit i en ini file, den virker perfekt....
iøvrigt....
vil du gemme i registry for andre ikke må kunne se de gemte data
Avatar billede doc404 Novice
27. december 2004 - 16:44 #9
stone..
Jeg håber virkelig blot der er gået noget copy and paste helt galt for dig???
Avatar billede ole_hj Juniormester
27. december 2004 - 17:13 #10
den kommer med disse fejl
[Error] Unit1.pas(46): Incompatible types: 'String' and 'procedure, untyped pointer or untyped parameter'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas
hvad har jeg glemt
Avatar billede stone Forsker
27. december 2004 - 18:03 #11
ole hj du skal bruge mit sidste eksempel 22:03:07 ikke det første, fordi der er fejl i det...

hva mener du >doc404< det vil da være dumt at sidde og skrive svaret i hånden, ja det er copy and paste fra et program jeg har, så hvad er problemet "ss"
Avatar billede doc404 Novice
27. december 2004 - 20:27 #12
stone. Du har lidt for mange creates,begin og for så free...

Din kode burde have set sådan ud..

procedure TForm1.Button2Click(Sender: TObject);
var
  IniFile : TIniFile;
begin
  IniFile := TIniFile.create(ExtractFilePath(ParamStr(0))+'settings.ini');
  edit1.Text := IniFile.readString('Settings','edit1','');
  edit2.Text := IniFile.readString('Settings','edit2','');
  edit3.Text := IniFile.readString('Settings','edit3','');
  inifile.free;
end;

og på samme måde skal button1click rettes
Avatar billede ole_hj Juniormester
27. december 2004 - 22:05 #13
ole hj: den du sendte der 22:03:07 har jeg fået til at virke. det er måske en copy fejl
Avatar billede stone Forsker
27. december 2004 - 22:45 #14
ok "doc404" det er en bedre løsning, sad ikke med delphi så jeg var i mine gemmer...
Avatar billede ole_hj Juniormester
06. september 2005 - 07:58 #15
takker
Avatar billede stone Forsker
06. september 2005 - 13:23 #16
ok....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester