Thema: Delphi RenFile

Einzelnen Beitrag anzeigen

Willie1

Registriert seit: 28. Mai 2008
667 Beiträge
 
Delphi 10.1 Berlin Starter
 
#4

Umbenennen von Files mit Windows

  Alt 27. Jan 2009, 11:40
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.
  Mit Zitat antworten Zitat