eliminazione file non riesce a volte su Mac
-
11-10-2019 - |
Domanda
tecnici Q & A 1497
e questa domanda (la cui risposta copiato dalla nota tecnica) indicano che, quando sempre fBsyErr
dal FSDeleteObject
, la soluzione corretta consiste nel chiamare FSUnlinkObject
su 10.5 +.
Qual è la differenza tecnica tra le due API FSDeleteObject
e FSUnlinkObject
(Diverso da notare che FSUnlinkObject
non compare nella documentazione)? Perché dovrebbe essere il unlink
fallback e non l'API primaria?
Soluzione
Direi che FSDeleteObject
venuto prima perché continua una linea di funzioni di file-cancellazione che esistevano molto prima che il Mac OS è fusa con Unix, mentre lo scollegamento di un file è un concetto di Unix.
Altri suggerimenti
Il documento di Apple si è collegato spiega la differenza piuttosto chiaramente. FSUnlinkObject ha la stessa semantica unlink) (- l'eliminazione di file aperti è permesso. FSDeleteObject non consente l'eliminazione dei file aperti e ritorni che il codice di errore quando si tenta di farlo.