2 votes

La suppression de fichiers échoue parfois sur Mac

Questions et réponses techniques 1497 et cette question (dont la réponse est copiée de la note technique) indiquent que, lorsqu'on obtient fBsyErr de FSDeleteObject la solution de contournement appropriée consiste à appeler FSUnlinkObject sur 10.5+.

Quelle est la différence technique entre les deux API ? FSDeleteObject y FSUnlinkObject (autre que de noter que FSUnlinkObject n'apparaît pas dans la documentation) ? Pourquoi doit-on unlink soit la solution de repli et non l'API principale ?

0voto

Andrew Medico Points 11338

Le document d'Apple dont vous avez donné le lien explique très clairement la différence. FSUnlinkObject a la même sémantique que unlink() - la suppression des fichiers ouverts est autorisée. FSDeleteObject ne permet pas de supprimer des fichiers ouverts et renvoie ce code d'erreur lorsque vous tentez de le faire.

0voto

JWWalker Points 11189

Je suppose que FSDeleteObject est arrivé en premier parce qu'il poursuit une lignée de fonctions de suppression de fichiers qui existaient bien avant que le Mac OS ne fusionne avec Unix, alors que le déliage d'un fichier est un concept Unix.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X