Technical Q&A 1497
this question(其答案从技术说明中复制)表明,从fBsyErr
获取FSDeleteObject
时,正确的解决方法是在10.5 +上调用FSUnlinkObject
。
两个API FSDeleteObject
和FSUnlinkObject
之间的技术差异是什么?
(注意FSUnlinkObject
没有出现在文档中)?为什么unlink
应该成为后备而不是主要API?
答案 0 :(得分:0)
您链接的Apple文档非常清楚地解释了这一区别。 FSUnlinkObject与unlink()具有相同的语义 - 允许删除打开的文件。 FSDeleteObject不允许删除打开的文件,并在您尝试时返回该错误代码。
答案 1 :(得分:0)
我认为FSDeleteObject
首先出现是因为它继续存在一系列文件删除功能,这些功能早在Mac OS与Unix合并之前就已存在,而取消链接文件则是Unix概念。