Autor Beitrag
tha_blaze
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29

xp
D7
BeitragVerfasst: Di 18.01.05 14:54 
Mahlzeit :D

ich hab ein prog geschrieben was dateien aus einem ordner ausliest das wird durch einen timer verursacht. die dateien werden in einem memo aufgelistet und sollen in einer .log gespeichert werden. der timer soll das alle 5 sek tun und das ganze 5mal also soll am ende in der log datei alle dateien 5mal aufgelistet sein bisher kriege ich das bloß so hin das alle dateien 1mal drinstehen.

hier noch ein wenig source zum verstehen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if zaehler=5 then
  begin
   close;
  end
  else
  begin
    zaehler:= zaehler+1;
    s:=TStringlist.Create;
    ListFileDir('c:\medlinq\easy\*.*',s);
    memo1.Clear;
    memo1.Lines.AddStrings(s);
    s.Free;
    memo1.Lines.SaveToFile('test.log');
    end;
end;


thx

_________________
stehen ein einbeiniger und ein blinder auf der brücke sagt der einbeinige zum blinden "ich trete dir gleich in hintern", darauf der blinde "das will ich sehen"!
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Di 18.01.05 15:01 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if zaehler=5 then
  begin
   close;
  end
  else
  begin
    zaehler:= zaehler+1;
    s:=TStringlist.Create;
    ListFileDir('c:\medlinq\easy\*.*',s);
    memo1.Clear;
    Memo1.Lines.LoadFromFile('test.log');
    memo1.Lines.AddStrings(s);
    s.Free;
    memo1.Lines.SaveToFile('test.log');
    end;
end;


Hätt ich so gelöst

AXMD
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 18.01.05 15:03 
SaveToFile überschreibt immer die angegebene Datei.
Du musst dir eine zweite StringList anlegen, in der alle Daten gesammelt werden. Diese speicherst du dann zum Schluss mit SaveToFile.
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Di 18.01.05 15:06 
Wobei mein Vorschlag mit LoadFromFile sicher auch funktionieren würde ;)

AXMD
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 18.01.05 15:07 
AXMD hat folgendes geschrieben:
Wobei mein Vorschlag mit LoadFromFile sicher auch funktionieren würde ;)

Logisch. Du warst nur schneller als ich beim posten.
tha_blaze Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29

xp
D7
BeitragVerfasst: Di 18.01.05 15:18 
kann es sein das man die log datei am ende auch freigeben muss weil ich hab das programm jetzt 2mal gestartet (also den timer 10mal durchlaufen lassen) und in der log waren dann alle diese dateien aber er soll ja bloß 5mal die dateien anzeigen. also muss die datei doch am ende wieder freigegeben werden oder irre ich mich da...

thx

_________________
stehen ein einbeiniger und ein blinder auf der brücke sagt der einbeinige zum blinden "ich trete dir gleich in hintern", darauf der blinde "das will ich sehen"!
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 18.01.05 15:32 
Du musst beim ersten Durchlauf die Datei erstmal löschen, wenn sie schon existiert. Am einfachsten mit einem SaveToFile, wenn im Memo noch nichts drin steht.
tha_blaze Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29

xp
D7
BeitragVerfasst: Di 18.01.05 15:34 
kann ich dann nich savetofile vor dem:
ausblenden Delphi-Quelltext
1:
   memo1.Clear;					

ja das klappt alles klar habt dank meine kompetenten retter... :rofl:

_________________
stehen ein einbeiniger und ein blinder auf der brücke sagt der einbeinige zum blinden "ich trete dir gleich in hintern", darauf der blinde "das will ich sehen"!
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 18.01.05 15:42 
Nein. Dann würde dir das Sammeln aus den 5 Durchläufen fehlen.
Du kannst auch im Create der Form mit der Funktion FileExists feststellen, ob die Datei existiert. Mit DeleteFile löscht du dann die Datei, falls sie existiert.
Die Funktionsaufrufe sind nicht schwierig und stehen gut dokumentiert in der OH.
tha_blaze Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29

xp
D7
BeitragVerfasst: Mi 19.01.05 11:16 
doch es hat im groben geklappt aber mein chef wollte das irgendwie anders gemacht haben aber es funktioniert trotzdem :D jetzt soll ich das erst alles in einer tmp.log speichern und wenn das programm fretig is wird die datei umbenannt und die tmp.log wird gelöscht. da soll auch wieder am ende 5mal alle dateien drinstehen aber bisher stehen sie bloß einmal drinn. :puke:

thx 4 help 8)

_________________
stehen ein einbeiniger und ein blinder auf der brücke sagt der einbeinige zum blinden "ich trete dir gleich in hintern", darauf der blinde "das will ich sehen"!
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Mi 19.01.05 13:34 
Hat dein Chef kein Kurzzeitgedächtnis, dass er das ganze gleich in fünffacher Ausführung braucht?

AXMD