Objective c 如何在SnowLeopard中编写Finder插件

Objective c 如何在SnowLeopard中编写Finder插件,objective-c,macos,plugins,osx-snow-leopard,finder,Objective C,Macos,Plugins,Osx Snow Leopard,Finder,无论我在哪里看到,在雪豹中编写Finder插件都比在Leopard中容易得多。有人能给我指一些我可以下载的教程或简单的代码示例吗 我正在尝试为Finder编写一个客户右键单击菜单项。如果您所说的插件指的是上下文菜单,那么您可以通过服务API执行此操作 希望这有帮助 PK查找程序没有官方或受支持的插件系统。从OSX10.6开始,您需要将代码注入Finder进程,并覆盖Finder进程中的objective C方法 我为一个专有项目做了这件事。我可以告诉你,之所以没有这方面的示例或教程,是因为这是一

无论我在哪里看到,在雪豹中编写Finder插件都比在Leopard中容易得多。有人能给我指一些我可以下载的教程或简单的代码示例吗


我正在尝试为Finder编写一个客户右键单击菜单项。

如果您所说的插件指的是上下文菜单,那么您可以通过服务API执行此操作

希望这有帮助


PK

查找程序没有官方或受支持的插件系统。从OSX10.6开始,您需要将代码注入Finder进程,并覆盖Finder进程中的objective C方法

我为一个专有项目做了这件事。我可以告诉你,之所以没有这方面的示例或教程,是因为这是一项非常困难和耗时的开发任务。因此,对于已经完成这项工作的个人或组织来说,有足够的动机来密切关注其流程的细节

如果有任何方法可以使用服务API实现您的目标,那么就这样做。编写一个Finder插件将花费您1-2个月的艰苦开发和对C和Objective-C内部结构的深入了解


如果你仍然相信你想这样做,抓住它。祝你好运。

苹果现在要求你编写服务,而不是Finder插件。这就是为什么你现在发现比以前困难得多的原因。事实上,上下文菜单插件支持已经从64位应用程序中移除(Finder现在默认为64位应用程序)。即使上下文菜单插件是64位的,应用程序也不会加载它。但是,增强的服务显示为上下文菜单项,因此这应该允许您实现所需的相同功能集


有关如何在雪豹中编写服务的更多信息,请参阅的答案。

Dropbox和Safesync有一个查找器插件,用于显示上下文菜单和覆盖图标。我不知道Dropbox是如何做到的,但对于Safesync,您可以在/Library/Application-Support/SIMBL/Plugins中找到一个捆绑包。所以这可能会有所帮助。

这个问题已经存在了一段时间,但我知道人们还在寻找,所以这里有一个完整的解决方案,可以使用方法swizzling在Lion和Mountain Lion中查找图标徽章和上下文菜单

提供一个脚本包,该脚本包将swizzle相关的Finder方法和用于设置图标和上下文菜单的Java客户端。它还包括Windows和Linux的等效项目

希望这将为您节省anthony所描述的长达1-2个月的艰苦开发。:)

该项目是LGPL下的开源项目,因此请随时提供任何错误修复或改进

可能重复的