Sorry, ich habe meine Frage mit "zu heißer Nadel gestrickt"!
Eigene Funktion RenFile sieht so aus:
Delphi-Quellcode:
function RenFile(const Oldname,Newname: string): Boolean;
var
SHFOS: TSHFileOpStruct;
a,n: array[0..255] of Char;
begin
if FileExists(Oldname) then begin
FillChar(a, SizeOf(a), 0);
StrPCopy(a, ExpandFilename(Oldname)+#0#0);
FillChar(n, SizeOf(n), 0);
StrPCopy(n, ExpandFilename(Newname)+#0#0);
with SHFOS do begin
Wnd:=0;
wFunc:=FO_RENAME;
pFrom:=a;
pTo:=n;
fFlags:=FOF_SIMPLEPROGRESS;
fAnyOperationsAborted:=false;
hNameMappings:=nil;
end;
Result:=(ShFileOperation(SHFOS) = 0) and
(SHFOS.fAnyOperationsAborted = LongBool(false)) and FileExists(NewName)
end
else
Result:=false
end; {RenFile}
Der Fehler tritt bei beliebigen Dateien und Pfaden nur unter Vista auf.