2012-03-23 61 views
2

我想以编程方式在Cocoa中设置Finder标签(也就是Finder中的项目颜色)。我可以用设置来自Cocoa的Finder标签

MDItemRef itemRef = MDItemCreateWithURL(NULL, (CFURLRef)u); 
CFStringRef s = MDItemCopyAttribute(itemRef, kMDItemFSLabel); 
label = [(NSString *)s intValue]; 

此API不提供书面元数据的任何机制,所以我的猜测是,该解决方案在其他地方完全读取URL u的搜索标签没有问题。任何提示?

编辑:我知道这是可能的使用AppleScript,但这是不允许在沙箱下。我需要一个纯粹的进程内解决方案。

+0

对于10.6+,请尝试http://stackoverflow.com/a/2785289/483349。 – 2012-03-23 11:36:59

+0

谢谢,那很快。如果您以答案形式发表评论,我会接受它。 – Aderstedt 2012-03-23 11:39:01

+0

[我怎样才能在OS X Finder中有条件地着色文件和文件夹?](http://stackoverflow.com/questions/2778855/how-can-i-conditional-color-files-and-folders-in -the-OS-X-取景器) – 2012-03-23 18:19:34

回答

1

对于Snow Leopard及以上版本,您可以使用URL资源API,如this answer所示。