Работа вашего приложения с «открыть с помощью» в Vista Photo Gallery
Windows Photo Gallery предоставляет пользователям возможность открывать изображения и видео в их любимых приложениях. Если вы разработчик такого приложения, вот, как вы можете интегрировать свою программу в Photo Gallery…
Интервью
В Windows Photo Gallery есть два места, где пользователь может выбрать другие приложение. Одну из них – меню «открыть», доступное через кнопку open на панели инструментов. Другое – контекстное меню «открыть с помощью», доступное по правому клику по объекту в галереи.
Как это работает
Windows Photo Gallery использует стандартный метод для определения приложений, зарегистрированных с этим форматом. Чтобы ваше приложение отображалось в списке «открыть с помощью» (например, для .JPG), ваш инсталлятор должен создать соответствующие ключи. Подробнее, как это реализовать, вы можете прочитать в
Добавление этих ключей в реестр не только отобразит ваше приложение в меню Photo Gallery, но и во всех меню «открыть с помощью» (в том числе и в Explorer).
Работа с мультивыбором
Windows Photo Gallery также подерживает мультивыбор; вы можете выбрать несколько объектов и открыть их в одном приложении. Например, если вы выбираете три видео и в меню “открыть” выбираете Windows Media Player, то все три видео поместятся в плейлисте проигрывателя.
Есть два способа, как поддержать мультивыбор Photo Gallery в вашем приложении.
Первый, это сделать ваше приложение по-умолчанию для типа файлов (с помощью таких глаголов, как “открыть”, “воспроизвести” и т.д.). Подробнее об этом можно прочесть в
Если вы хотите обеспечить поддержку мультивыбора без установки вашего приложения по-умолчанию для типа файлов, у вас есть решение. В
Пример 1: поддержка .JPG мультивыбором
Предположим, вы хотите заставить ваше приложение поддерживать мультивыбор .JPG. Вы можете зарегистрировать ваше приложение, приложением по-умолчанию, но если вы этого не хотите, то вот инструкция.
Шаг 1: создание PROGID
Вам необходимо создать PROGID для вашего приложения и нужного типа файлов. Предположим, ваше приложение называется MyApp.exe, а для PROGID вы выбрали название MyAppImageFile. Вам потребуются следующие ключи реестра:
[b]HKEY_CLASSES_ROOT
MyAppImageFile
shell
open
command[/b]
(Default) = [i]строка вашего приложения[/i] (REG_SZ или REG_EXPAND_SZ)
DropTarget
CLSID = ваш CLSID (type: REG_SZ)
ype: REG_SZ)[/code]
Шаг 2: регистрация вашего PROGDI с расширениями файлов
Для каждого расширения вам потребуется добавить значение OpenWithProgIds, в этом приложении вы хотите поддержать .JPG файлы.
[code]HKEY_CLASSES_ROOT
.jpg
OpenWithProgIds
MyAppImageFile (type: REG_NONE)[/code]
Если вы хотите поддержать другие расширения, вам придется таким же образом добавить значение OpenWithProgIds к ним.
Пример 2: поддержка .JPG и .PNG мультивыбора в WMP
Windows Media Player поддерживает просмотр таких файлов, как .JPG и .PNG, даже если он не является приложением по-умолчанию для этих типов. Вы можете добавить поддержку мультивыбора к WMP. Для этого следующий текст сохраните в .reg и запустите его. После этого в меню Windows Photo Gallery при выборе нескольких .JPG и / или .PNG файлов, появится пункт Windows Media Player.
[code]Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.jpg\OpenWithProgids]
"ImageFileForWmp"=hex(0):
[HKEY_CLASSES_ROOT\.png\OpenWithProgids]
"ImageFileForWmp"=hex(0):
[HKEY_CLASSES_ROOT\ImageFileForWmp]
[HKEY_CLASSES_ROOT\ImageFileForWmp\shell]
[HKEY_CLASSES_ROOT\ImageFileForWmp\shell\open]
[HKEY_CLASSES_ROOT\ImageFileForWmp\shell\open\command]
@=hex(2):22,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,\ 00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,\ 4d,00,65,00,64,00,69,00,61,00,20,00,50,00,6c,00,61,00,79,00,65,00,72,00,5c,\
00,77,00,6d,00,70,00,6c,00,61,00,79,00,65,00,72,00,2e,00,65,00,78,00,65,00,\ 22,00,20,00,2f,00,70,00,72,00,65,00,66,00,65,00,74,00,63,00,68,00,3a,00,36,\
00,20,00,2f,00,4f,00,70,00,65,00,6e,00,20,00,22,00,25,00,4c,00,22,00,00,00
[HKEY_CLASSES_ROOT\ImageFileForWmp\shell\open\DropTarget]
"CLSID"="{CE3FB1D1-02AE-4a5f-A6E9-D9F1B4073E6C}"[/code]
Источник:
Перевод: Райкер
По теме
- Windows Vista официально "мертва"
- Завтра прекращается поддержка Windows Vista
- Остался последний месяц поддержки Windows Vista
- 11 апреля Microsoft прекратит поддержку Windows Vista
- Через год прекращается поддержка Windows Vista
- Microsoft открыла исходный код Open XML SDK
- Баллмер: Longhorn/Vista - моя самая серьезная ошибка
- Сегодня заканчивается бесплатная фаза поддержки Windows Vista и Office 2007
- Microsoft продлила срок поддержки Windows Vista и Windows 7
- Практики обеспечения безопасности Microsoft - лучшие в мире