Ich habe ein ausführbares Programm (kein Quellcode), das temporäre Dateien in einem bestimmten Ordner erstellt und diese am Ende löscht. Ich habe Probleme mit dem Programm und möchte die temporären Dateien untersuchen, um festzustellen, ob ich etwas tun kann, ohne die Quelle zu ändern.
Gibt es eine Möglichkeit, das Löschen von Dateien durch das Programm oder alternativ das Löschen von Dateien in einem bestimmten Ordner durch alle Programme zu verhindern?
Antworten:
Sie können die ACL für den betreffenden Ordner so ändern, dass das Konto, auf dem die ausführbare Datei ausgeführt wird (höchstwahrscheinlich Sie ), dort Dateien erstellen, schreiben, bearbeiten, aber nicht löschen kann. Zwei Probleme:
Sie würden natürlich möglicherweise das Programm zum Absturz bringen
Anschließend müssen Sie die Kontrolle über den Ordner wiedererlangen (Eigentümer werden, alle Berechtigungen zurücksetzen usw.), um die Dateien löschen zu können
quelle
Deny
Eintrag Vorrang vorAllow
. Sie können dem Verzeichnis einen Eintrag fürDeny Delete
und / oderDeny Delete Subfolders/Files
für hinzufügenEveryone
. Wir tun dies häufig, um Extraktions- / Download-Dateien für die Softwareinstallation zu erfassen.Da die Dateien erstellt werden, wird der Benutzer wie der Eigentümer der Dateien ausgeführt und kann sie löschen. Ich glaube, Sie können im Voraus nichts für NTFS CACLS im übergeordneten Verzeichnis konfigurieren.
Sie können versuchen, die Dateien in einem anderen Programm selbst zu öffnen, um festzustellen, ob dies das Löschen verhindert. Sie können auch versuchen, die Dateien zu kopieren und / oder zu verschieben, sobald sie in einem anderen Ordner erstellt wurden.
quelle