![]() |
Delphi-Version: 2007
FileAge unter Win7 und XP
Hallo Foristen,
zum Zwecke der Versionsaktualisierung benutze ich (die überladene Version von) FileAge:
Delphi-Quellcode:
Unter Win7 zeigen die Editfelder für alle Datumsangaben den 1.1.2000 an, unter XP den korrekten Zeitpunkt mit Uhrzeit.
var
VDTW, VDTWAlt : TDateTime; begin FileAge('P:\D1\Protokolle\DTW\DTWV2PR.exe', VDTW); FileAge('P:\D1\Protokolle\DTWAlt\DTWV2PR.exe', VDTWAlt); Da ich unter Win7 entwickle, die User XP nutzen, ist die Arbeit mühsam. Was passiert denn da? Oswald |
AW: FileAge unter Win7 und XP
Nachdem bisher niemand mit meinem Problem was anfangen konnte, habe ich mal einen Test durchgeführt:
Parallel werden FileAge und FileGetAttributesEx verwendet:
Delphi-Quellcode:
Leider wird in beiden Fällen unter Win 7 der 1.1.2000 als Datum ausgegeben (unter XP ist alles korrekt). Kann jetzt jemand was dazu sagen?
var
Form1: TForm1; fn : String; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var fa, d : TDateTime; begin FileAge(fn, fa); Edit1.Text := DateTimeToStr(fa); d := aenderung(fn); Edit3.Text := FormatDateTime('dd.mm.yyyy hh:nn:ss', d); end; procedure TForm1.FormCreate(Sender: TObject); begin fn := 'P:\XXX\YYY\DTW\DTWV2PR.exe'; end; function TForm1._FileTimeToDateTime(ft: _FileTime): TDateTime; var lft: _FileTime; dt: DWord; begin FileTimeToLocalFileTime(ft, lft); FileTimeToDosDateTime(lft, LongRec(dt).Hi, LongRec(dt).Lo); Result := FileDateToDateTime(dt); end; function TForm1.aenderung(Datei: String): TDateTime; var WAD: _WIN32_FILE_ATTRIBUTE_DATA; begin GetFileAttributesEx(PChar(Datei), GetFileExInfoStandard, @WAD); Result := _FileTimeToDateTime(WAD.ftLastWriteTime); end; Oswald |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz