Einzelnen Beitrag anzeigen

teekay

Registriert seit: 3. Jun 2004
23 Beiträge
 
Delphi 7 Enterprise
 
#1

SHFileOp FO_DELETE fehlerhaft

  Alt 20. Okt 2004, 15:05
Hallo

ich habe folgendes Problemchen - was für mich nicht ganz nachvollziehbar ist:

Ich lösche per ShellApi einzeln Dateien
folgenden code verwende ich momentan:

Delphi-Quellcode:
procedure DeleteFileToRecycle(dateien: string);
var SHFileOP: TSHFileOpStruct;
begin
  with SHFileOp do begin
    Wnd := Application.Handle;
    wFunc := FO_DELETE; // zum löschen
    fFlags := FOF_ALLOWUNDO; // Ermöglicht eine Umkehrung der letzten Operation
    pFrom := PChar(dateien + #0);
  end;
  SHFileOperation(SHFileOp);
end;
...

Aufruf :

DeleteFileToRecycle('D:\Delphi\Lizenz-Switch\Testdaten\Lizenz.e15' + #0);
Die Datei existiert, und ist nicht geschützt oder in Benutzung...

bei 3 von 4 Versuchen bekomme ich die angehängte Fehlermeldung, d.h. manchmal geht es meistens nicht
es ist aber auch kein muster erkennbar um das ganze nachzustellen

gemäß der code libary habe ich schon andere kombinationen versucht (speziell die Flags) > gleiches ergebnis
http://www.delphipraxis.net/viewtopic.php?t=1451

mein ziel ist es lediglich eine Datei in den Papierkorb zu verschieben um es ggf. wiederherzustellen (es werden nie mehrere oder geöffnete dateien gelöscht)
es gibt auch keine Rechteprobleme da alles lokal ausgeführt wird und Hauptbenutzerrechte vorliegen

ich hoffe ihr könnt mir helfen

mfG TeeKay
Miniaturansicht angehängter Grafiken
recycle.jpg  
  Mit Zitat antworten Zitat