Как включить сторонний сервис по умолчанию? - PullRequest
0 голосов
/ 25 ноября 2011

На Snow Leopard сторонние сервисы по умолчанию отключены. Есть ли способ включить его программно? Я попытался с NSRequiredContext, а также путем программного редактирования pbs.plist, как указано в следующем посте Как автоматически активировать элемент в меню служб OS X , NSServices не работает , но это не работает для меня.

1 Ответ

1 голос
/ 28 ноября 2011

У меня были некоторые проблемы с тем, чтобы это работало и в моем приложении. При отладке попытайтесь вызвать NSUpdateDynamicServices() при запуске приложения и убедитесь, что вы регистрируете поставщика услуг. Проблема может заключаться в том, что ваш сервис вообще не регистрируется. Вы можете использовать терминал, чтобы увидеть, какие услуги зарегистрированы с /System/Library/CoreServices/pbs -dump_pboard

Пример сервиса:

<key>NSServices</key>
    <array>
        <dict>
            <key>NSMenuItem</key>
            <dict>
                <key>default</key>
                <string>Open with app</string>
            </dict>
            <key>NSMessage</key>
            <string>processService</string>
            <key>NSPortName</key>
            <string>MyApp</string>
            <key>NSRequiredContext</key>
            <array>
            </array>
            <key>NSSendTypes</key>
            <array>
                <string>NSStringPboardType</string>
                <string>NSRTFPBoardType</string>
                <string>NSURLPBoardType</string>
            </array>
        </dict>
    </array>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...