var
...
hFile: THandle;
ls_Jahr_vom_DateiDatum, ls_MP3_Tag_Year :
string;
li_Korrektur_Jahr : Integer;
lt_new_Time_Dummy : SystemTime;
lt_new_Time : TFileTime;
...
...
begin
hFile := FileOpen(FCurFile, fmOpenWrite
or fmShareDenyNone);
li_Korrektur_Jahr := 0;
try
if not (hFile = INVALID_HANDLE_VALUE)
then begin
ls_Jahr_vom_DateiDatum := FormatDateTime('
YYYY', GetFileDate(FCurFile));
ls_MP3_Tag_Year := JS_MP3Tag.Year;
li_Korrektur_Jahr := StrToInt(ls_MP3_Tag_Year) - StrToInt(ls_Jahr_vom_DateiDatum);
if li_Korrektur_Jahr <> 0
then begin
try
DateTimeToSystemTime(IncYear(GetFileDate(FCurFile), li_Korrektur_Jahr), lt_new_Time_Dummy);
SystemTimeToFileTime(lt_new_Time_Dummy, lt_new_Time);
SetFileTime(hfile,
nil,
nil, @lt_new_Time);
except
on E:
Exception do begin
Main_Form.MemoLog.Lines.Add(E.ClassName + '
:' + E.
Message + '
' + SysErrorMessage(GetLastError) + '
Datei, welche nicht geändert werden konnte => "' + FCurFile + '
"');
Main_Form.img3.Visible := True;
end;
end;
end else if hFile = INVALID_HANDLE_VALUE
then begin
Main_Form.MemoLog.Lines.Add('
Fehlercode für ungültiges Datei-Handle = ' + IntToStr(hFile) + '
...bei Datei => "' + FCurFile + '
"');
end;
end;
finally
FileClose(hFile);
ls_Jahr_vom_DateiDatum := '
';
ls_MP3_Tag_Year := '
';
li_Korrektur_Jahr := 0;
end;
end;
...