| Autor |
Beitrag |
mimi
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Sa 02.08.03 21:01
Hallo,
habe die suchfunktion gefunden wurde auch fündig, doch leider geht das nicht was ich haben will.
ich brauche folgnede infos von der datei
1: Erstellungs Datum\Uhrzeit der Datei
2: Änderungs Datum\Uhrzeit der Datei
3: Letzer lese zugrief der datei
habe es mit folgender funktion versucht:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24:
| procedure TMfa.Packe; var Datei:TStream; i,len:Integer; DateiHeader:String; begin Datei := TFileStream.Create(FileName, fmCreate); Len:=Dateien.Count; Datei.Write(Len, SizeOf(Len));
for i:=0 to Dateien.Count-1 do begin DateiHeader:=Dateien.Strings[i] + ';' + DateTimeToStr(FileDateToDateTime(FileAge(Dateien.Strings[i]))) + ';' + DateTimeToStr(FileTimeToDateTime(GetFileLastWrite(Dateien.Strings[i]))) + ';' + DateTimeToStr(FileTimeToDateTime(GetFileLastAccess(Dateien.Strings[i])))+ ';' + 'Größe' + ';' + 'Beschreibung' + ';' + 'PositionA' + ';' + 'PositionE'; Len:=StrLen(PChar(DateiHeader)); Datei.Write(Len, SizeOf(Len)); Datei.Write(PChar(DateiHeader)^,Len); DateiHeader:=''; end; Datei.Free; end; |
doch leider wird immer nur der letzeschreibzugrief abgespeicher warum ?
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Tryer
      
Beiträge: 226
Erhaltene Danke: 7
|
Verfasst: Sa 02.08.03 22:39
- FileAge gibt auch nur den Zeitpunkt des letzten Schreibzugriffes an, liefert also nicht mehr Informationen als GetFileLastWrite.
- Das Datum des letzten Zugriffs wird im FAT / FAT32-Dateisystem nicht vermerkt, es steht nur unter NTFS zur Verfügung. (Und auch da nur optinal, das Speichern dieser Information läßt sich über die Registry abschalten)
MfG,
Tryer
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Sa 02.08.03 22:45
achso, aber wenn ich auf ein laufwerk bin was mit fat16 ? fomatier ist zeigt mir windows auch diese infos an oder dos....
und wie kann ich das jetzt machen ?
arbeite heute zum erstenmal mit TFieleStream und habe das primzip auch soweit verstanden.
jetzt wollte ich einfach ein arichvprogramm schreiben(so wie tar)
und wollte das oben der datei hader steht der soll folgender masen aufgebaut sein:
Verzeichnisname + Dateiname; Erstellungsdatum\Uhrzeit der datei Lezterzugrif(Datum\Uhrzeit); Letzer schreibzugrief: Datei Größe. und noch die position wie das progamm die datei findet wie und wie weit es lesen darf......
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Sa 02.08.03 23:09
ich habe das jetzt soweit geschaft, doch leider sind diese funktionen womit ich es mache zwei stunden zurück wie ich gemerkt habe.
ich nutze FindFirst und fertig.
aber egal welche funktion ich nutz delphi ist zwei stunden zurück wobei die Windows uhr genau geht, wie kann ich Delphi beibringen das es zwei stunden dazurechnet ???
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Tryer
      
Beiträge: 226
Erhaltene Danke: 7
|
Verfasst: Sa 02.08.03 23:58
Ist vielleicht noch ein FileTimeToLocalFileTime nötig ?
MfG,
Tryer
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 03.08.03 00:42
FindFirst liefert wohl das Datum und ie Uhrzeit als UTC-Zeit.
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 03.08.03 10:52
was heiß "UTC-Zeit"?
werde ich mal ausprobieren...
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 03.08.03 11:03
was heiß "UTC-Zeit"?
werde ich mal ausprobieren...
Edit:
es funktioniert, die zeiten werden richtig ausgeben, danke....
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 03.08.03 12:55
weiß den fehler:
1. D = 4
2. D = 140
3. D = 276
4. D = 412
kann mir wer ne rechnung sagen wie ich jetzt die postion erechnen kann da folgendes passieren kann:
die länge der datensätze ist variable und die pos kann es auch sein.
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 03.08.03 13:42
Was hast du jetzt für ein Problem mit "Datensätzen"? Ich dachte es geht um das Datum und die Zeit?
|
|
Tryer
      
Beiträge: 226
Erhaltene Danke: 7
|
Verfasst: So 03.08.03 13:45
Das Posting sollte wohl eigentlich da hin
MfG,
Tryer
|
|