标签: objective-c cocoa icons macos-carbon nsworkspace
有没有办法让资源分叉不可复制?特别是我通过NSWorkspace通过– setIcon:forFile:options:为特定目录中包含的文件设置了一个自定义徽章图标,我希望这些徽章在文件被复制到文件夹之外时就会丢失。
– setIcon:forFile:options:
答案 0 :(得分:2)
AFAIK没有简单/标准的方法来实现这一目标......
如果我们所讨论的文件系统本地基于Mac本身,那么您可以通过实现守护程序(以高权限运行)来实现您想要的目标。该守护进程基本上将自身集成到操作系统中(通过FSEvent和kqueue) - 这样它可以监视任何文件活动并相应地执行操作(删除徽章或类似)。
有关如何构建此类机制的某些来源,您可以检查this和this以及this too。
如果你想实现这个服务器端,有几种机制 - 但它们完全依赖于服务器技术(通知和/或挂钩机制)。