Einzelnen Beitrag anzeigen

Emwykey

Registriert seit: 27. Aug 2013
51 Beiträge
 
#1

Löschen von Dateien/Verzeichnissen ohne Meldung, wenn diese in Benutzung sind

  Alt 7. Okt 2015, 09:54
Hallo,

ich habe folgendes Problem (ich hoffe, ich bin in der richtigen Toppic ):

Ich möchte beim beenden eines Programmes ein Verzeichnis und seinen Inhalt löschen ( Temporäre Dateien )
Jetzt kann es allerdings vorkommen, dass manche Dateien durch andere Programminstanzen noch in Nutzung sind.
Diese sollten natürlich nicht gelöscht werden, was auch nicht passiert.
Allerdings erhalte ich in diesem Fall immer eine nervige Meldung, dass Dateien nicht gelöscht werden können.

Hier ist mein Code:
Code:
procedure DeleteTemp;
var SourceLst: string;
    FOS: TSHFileOpStruct;
begin
  FillChar(FOS, SizeOf(FOS), 0);
  FOS.wFunc := FO_DELETE;
  SourceLst := PathTo + '\Temp\' + '*.*';
  FOS.pFrom := PChar(SourceLst);
  FOS.fFlags := FOS.fFlags OR FOF_NOCONFIRMATION;
  SHFileOperation(FOS);
end;
Kann ich diese Meldung irgendwie unterdrücken? So, dass geöffnete Dateien / Verzeichnisse einfach nicht gelöscht werden, ohne dass der Nutzer das mitbekommt?

Danke im Voraus für eine Antwort!
  Mit Zitat antworten Zitat