AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

"Datei aktualisiert" -> Abfragen

Ein Thema von Sarahlin · begonnen am 26. Jul 2006 · letzter Beitrag vom 26. Jul 2006
Antwort Antwort
Seite 1 von 2  1 2      
Sarahlin

Registriert seit: 26. Jul 2006
9 Beiträge
 
#1

"Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 16:12
Hallo alle zusammen,

ich möchte ein ganz einfaches Programm schreiben was überprüft ob eine Datei aktualisiert wurde und darauf eine Sounddatei als Hinweiston abspielt.

Hört sich einfach an, doch ich weiß nicht wie ich nun eine "Textformatierte" Datei abfragen kann ob sie schon modifiziert wurde.

Kennt sich da wer mit aus?
Ich bin nicht blöd, sondern eine Anfängerin.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 16:25
Bilde regelmäßig einen (MD5-)Hash und wenn der sich geändert hat, hat sich auch der Inhalt der Datei geändert. Alternativ könnte man auch das Änderungsdatum der Datei benutzen. Oder man überwacht das Verzeichnis mit einer API-Funktion, deren Name mir jetzt nicht einfallen will.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Sarahlin

Registriert seit: 26. Jul 2006
9 Beiträge
 
#3

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 16:57
Naja der Inhalt der Datei wird meist gleich (statisch) bleiben, was mich interessiert ist eben das Änderungsdateum. Das er daran erkennt das die Datei gerade eben wieder gespeichert wurde.

Somit will ich wissen wie man in Delphi so eine Abfrage durchführen könnte die jede 1-2 Sekunden (timer1 schätze ich mal) die function zur Abfrage wiederholt.

Nur ich habe damals in der Schule einen Grundkurs mit Delphi gehabt, dort wurde uns beigebracht wie man Rechenprogramme und sowas schreibt, oder auch Daten speichert und ausliest.

Doch nicht wie man solche MD5 Hashes überprüft oder noch schlimmer, nachschaut ob sich das Änderungsdatum einer Datei geändert hat. Auch weiß ich nicht wie ich bei der Suche nach gewünschten Funktionen bei Delphi verfahren muss, damit ich nicht immer hier nachfrage.
Ich bin nicht blöd, sondern eine Anfängerin.
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 17:15
Es gibt die Möglichkeit, sich von Windows benachrichtigen zu lassen, wenn sich eine datei verändert hat.

Dazu gibt es etliche Delphi-Komponenten.
Such mal nach DirMonitor hier im Forum...

/edit:
ich hab noch einen DirMonitor bei mir auf der Platte gefunden.
Hänge diesen mal hier an.
Angehängte Dateien
Dateityp: zip jcmmdirmonitor_164.zip (259,8 KB, 15x aufgerufen)
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 17:18
oder wenn Du es selber machen willst, in den SysUtils gibt es die Routine FileAge oder auch FileGetDate.
Die könntest Du für Dein Anliegen benutzen.

Zu MD5 Hashes gibt es im Web (md5.pas) oder auch hier in der DP Routinen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 17:22
Zitat von Sarahlin:
nachschaut ob sich das Änderungsdatum einer Datei geändert hat.
Delphi-Quellcode:
var
   dateialter : integer;
...
   if SysUtils.FileAge(dateiname) > dateialter then
       ...
Andreas
  Mit Zitat antworten Zitat
Sarahlin

Registriert seit: 26. Jul 2006
9 Beiträge
 
#7

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 20:26
Zitat von shmia:
Zitat von Sarahlin:
nachschaut ob sich das Änderungsdatum einer Datei geändert hat.
Delphi-Quellcode:
var
   dateialter : integer;
...
   if SysUtils.FileAge(dateiname) > dateialter then
       ...
Deine Methode kapiere ich jetzt nicht. Schon es scheint der Teil zu sein der die Datei überprüft. Aber woher soll mein Programm nun wissen welches FileAge die Datei zuvor hatte?
Ich bin nicht blöd, sondern eine Anfängerin.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 20:30
Hi.

Du könntest dir das Alter der überwachten Datei in einer Variable merken, immer wenn es sich geändert hat.

Grüße vom marabu
  Mit Zitat antworten Zitat
Sarahlin

Registriert seit: 26. Jul 2006
9 Beiträge
 
#9

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 20:41
Natürlich, aber ich kann das Alter nicht auslesen. Wenn ich FileAge auslese ist der Wert immer -1! Ich habe es gerade mal mit einem label1 Objekt porbiert und der Datei c:/test.txt

Delphi-Quellcode:
var
zahl: integer;
wert: string;

procedure TForm1.FormCreate(Sender: TObject);
begin
zahl := SysUtils.FileAge('c:\test.txt');
wert := IntToStr(zahl);
label1.caption := wert;
end;
Im Label steht dann leider nur "-1", die Datei besteht aber und ich habe sie schon einige male einfach verändert... doch es kommt immer als Antwort "-1" heraus.

Zielfunktion wäre:
Beim Formstart: "Alter bestimmen der Datei test.txt"
Beim Prüfen: "Das Vom Start bestimmte Alter mit der aktuellen vergleichen" oder "Das letzt Alter mit der aktuellen vergleichen"
Hat sich dann was geändert soll er ein Soundfile abspielen.
Ich bin nicht blöd, sondern eine Anfängerin.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: "Datei aktualisiert" -> Abfragen

  Alt 26. Jul 2006, 20:47
Delphi Hilfe lesen bildet.
Zitat:
The return value is -1 if the file does not exist.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:28 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