Приложения в OS X, которые могут открывать файлы для запуска соответствующих приложений, часто позволяют пользователю выбрать приложение, которое откроет файл.Примером может служить Finder.
Мне все еще неясно, какое решение лучше всего реализовать для этого.Сложность заключается в производительности и отображении значка приложения.
Во-первых, чтобы получить список приложений, я обнаружил только LSCopyApplicationURLsForURL ().
Основная сложность для меня сейчас заключается в получении значков приложений.,Все, что у меня есть, это URL-адреса (пути) к приложениям.Единственный способ получения значков, который я знаю, - создать объект CFBundle, а затем прочитать список приложений, чтобы получить данные значков.Но это, похоже, требует большого доступа к диску, и я мог бы предположить, что это будет весьма неэффективно, если приложение будет размещено на удаленном файловом сервере.
Я считаю, что существует также кэшированная база данных о приложениях, котораявключает в себя значки и отображаемые имена (без расширения) и тому подобное.Но где API для этого?
Примечание: приложение основано на углероде, но я могу использовать функции Какао (NS ...) при необходимости.Также будет приветствоваться поддержка 10.5, даже 10.4.