Dieser glaubwürdig klingende Newsgroup-Beitrag sowie die Antwort von Tony Lee weisen darauf hin, dass für die meisten Anwendungen ein Überschreiben als "Speichern unter" dasselbe ist wie ein Löschen, gefolgt von einem "Create-New", soweit das Dateisystem betroffen ist. Ich kann diese Verallgemeinerung ablehnen, weil es als Programmierer sinnvoll ist. Wenn ich die Funktion "Speichern unter" implementiere, gibt es keinen Grund, eine API zum Öffnen der Datei mit einer Datei zu öffnen, da dieser Codepfad nur in den seltenen Fällen eines Überschreibens verwendet wird. Ein Programmierer verwendet den Aufruf zum Erstellen einer neuen Datei viel eher für einen schnellen Aufruf von fileDelete, falls dies selten erforderlich ist.
Es gibt jedoch keine sichere Möglichkeit zu wissen, wie der Programmierer der überschreibenden App mit der vorhandenen Datei umgegangen ist, es sei denn, Sie können sie fragen oder das Dateisystemverhalten der App mit einem Tool wie FileMon oder Process Monitor verfolgen .
Im Durchschnitt würde ich vermuten, dass die Wiederherstellung einer Datei, die von einer Anwendung "überschrieben" wurde, nur geringfügig geringer ist als bei allen anderen Dateien, die gelöscht wurden, gefolgt von Schreibvorgängen auf die Festplatte.
Es ist unnötig zu erwähnen, dass NTFS-Undeletes keine sehr zuverlässige Wiederherstellungsstrategie darstellt. Wenn dies wahrscheinlich erneut vorkommt, sollten Sie sich mit einer Art Versionskontrollsystem befassen, um Ihre tägliche Backup-Strategie zu ergänzen. Leider ist die automatische Dateiversionierung, die in manchen Betriebssystemen wie VMS und Netware eine Standardfunktion war, auf dem Mainstream-Markt nicht mehr üblich.