Hallo,
ich versuche gerade mich nen bisle in Delphi einzuarbeiten und mache dazu einen Programm-Manager!
Eine Funktion dabei ist es, dem benutzer einen Button zu bieten, mit dem er eine *.Exe auswählen kann. Von der ausgewählten Datei wird aber nur der Pfad+Dateiname gebraucht, den ich dann in ein Edit lade und in einem Array Speichere.
Zum schluss, falls man auf 'Speichern' drückt, sollten dann alle Daten aus dem Array in eine StringListe geladen werden und wieder in die data.dat gespeichert werden.
Jetzt ist passiert, dass wenn man den OpenDialog benutzt, anstatt den Pfad manuell einzugeben, die betroffene Anwendung zwar in der StringListe gespeichert wird, aber eben nicht in der data.dat.
Hier noch ein paar Code-Schnipsel:
Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Edit2.Text:=OpenDialog1.FileName; // hier schreibt er den pfad+datei in ein edit
end;
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var datafile:TStringList; m:integer;
begin
datafile:=TStringList.create;
for m:=0 to high(programme) do begin
datafile.Add(programme[m].name+';'+programme[m].adresse); // hier holt er die ganzen Programme aus dem array und speichert sie in der stringlist, bis sie schließlich gespeichert werden
end;
datafile.SaveToFile(filename); //filename is ne globale konstante
end;
Er speichert wie gesagt alles super, nur wenn ich den OpenDialog benutzte, hört er auf.
Bitte helft mir!
mfg gwxxl