Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как написать плагин Finder в Snow Leopard

Автор вопроса: OZGОтветов: 5

Куда бы я ни посмотрел, я вижу, что написать плагин Finder в Snow Leopard намного проще, чем в Leopard. Может ли кто-нибудь указать мне на какой-нибудь учебник или простой пример кода, который я могу скачать?

Я пытаюсь написать для Finder пункт контекстного меню клиента.

  • возможный дубликат Как написать плагин OS X Finder anthony 16.10.2010

macosobjective-cpluginsfinderosx-snow-leopard

Ответы

Ответ 1 · рейтинг 4 · anthony

Для Finder нет официальной или поддерживаемой системы плагинов. Начиная с OS X 10.6, вам нужно будет ввести код в процесс Finder и переопределить методы цели C в процессе Finder.

Я сделал это для собственного проекта. Я могу сказать вам, что причина того, что для этого нет примеров или руководств, заключается в том, что это значительно сложная и трудоемкая задача разработки. По этой причине у людей или организаций, которые достигли этого, есть много стимулов тщательно охранять особенности своего процесса.

Если есть какой-либо способ достичь своей цели с помощью API служб, сделайте это. На написание плагина Finder у вас уйдет 1-2 твердых месяца кропотливой разработки и достаточно глубоких знаний о внутреннем устройстве C и Objective-C.

Если вы все еще уверены, что хотите это сделать, возьмите mach_star. Удачи.

Ответ 2 · рейтинг 2 · Pavan

Если под плагином вы имеете в виду контекстное меню, вы можете сделать это через API сервисов.

Надеюсь это поможет.

ПК

Ответ 3 · Cody Gray

Apple теперь требует, чтобы вы написали службу вместо подключаемого модуля Finder. Вот почему вам сейчас это намного труднее, чем раньше. Фактически, поддержка подключаемого модуля контекстного меню была удалена из 64-битных приложений (которые теперь используются в Finder по умолчанию). Даже если подключаемый модуль контекстного меню 64-разрядный, приложение не загрузит его. Однако расширенные службы отображаются в виде пунктов контекстного меню, поэтому это должно позволить вам реализовать тот же набор функций, который вы ищете.

См. Ответы на этот вопрос для получения дополнительной информации о том, как писать службы в Snow Leopard.

Ответ 4 · hewigovens

В Dropbox и Safesync есть плагин Finder для отображения контекстных меню и наложенных значков. Я не уверен, как это сделал Dropbox, но для Safesync вы можете найти пакет, расположенный в / Library / Application Support / SIMBL / Plugins. Так что SIMBL может помочь.

Ответ 5 · dejuknow

Этот вопрос существует уже некоторое время, но я знаю, что люди все еще ищут, поэтому вот законченное решение для значков значков Finder и контекстных меню в Lion и Mountain Lion с использованием метода swizzling.

Liferay Nativity предоставляет пакет сценариев, который будет переключать соответствующие методы Finder и клиент Java для установки значков. и контекстные меню. Он также включает эквивалентные проекты для Windows и Linux.

Надеюсь, это сэкономит вам 1-2 месяца кропотливой разработки, описанной Энтони. :)

Проект с открытым исходным кодом под LGPL, поэтому не стесняйтесь вносить любые исправления ошибок или улучшения!

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы