Löschen von Dateien manchmal nicht auf Mac
-
11-10-2019 - |
Frage
Technische Q & A 1497
und diese Frage (deren Antwort aus der Tech-Note kopiert) zeigt, dass, wenn immer fBsyErr
von FSDeleteObject
, ist die richtige Abhilfe FSUnlinkObject
auf 10,5 + zu nennen.
Was ist der technische Unterschied zwischen den beiden APIs FSDeleteObject
und FSUnlinkObject
(Außer der Feststellung, dass FSUnlinkObject
in der Dokumentation nicht angezeigt wird)? Warum soll der Rückfall und nicht die primäre API unlink
sein?
Lösung
Ich würde vermuten, dass FSDeleteObject
kam zuerst, weil es eine Reihe von Datei-Löschfunktionen setzt die lange existierte, bevor der Mac OS mit Unix verschmolzen, während eine Datei Entkoppeln ein Konzept Unix ist.
Andere Tipps
Das Apple Dokument verknüpft erklärt den Unterschied ganz deutlich. FSUnlinkObject hat die gleiche Semantik wie unlink () - Löschen von geöffneten Dateien erlaubt. FSDeleteObject erlaubt es nicht, das Löschen geöffnete Dateien und kehrt den Fehlercode, wenn Sie dies versuchen.