Опрос
Вы участвуете в программе Windows Insider?
Популярные новости
Обсуждаемые новости

Работа вашего приложения с «открыть с помощью» в Vista Photo Gallery

Напечатать страницу
04.07.2006 00:23 | Raiker

Windows Photo Gallery предоставляет пользователям возможность открывать изображения и видео в их любимых приложениях. Если вы разработчик такого приложения, вот, как вы можете интегрировать свою программу в Photo Gallery…

Интервью
В Windows Photo Gallery есть два места, где пользователь может выбрать другие приложение. Одну из них – меню «открыть», доступное через кнопку open на панели инструментов. Другое – контекстное меню «открыть с помощью», доступное по правому клику по объекту в галереи.





Как это работает
Windows Photo Gallery использует стандартный метод для определения приложений, зарегистрированных с этим форматом. Чтобы ваше приложение отображалось в списке «открыть с помощью» (например, для .JPG), ваш инсталлятор должен создать соответствующие ключи. Подробнее, как это реализовать, вы можете прочитать в MSDN документации по созданию ассоциаций файлов.

Добавление этих ключей в реестр не только отобразит ваше приложение в меню Photo Gallery, но и во всех меню «открыть с помощью» (в том числе и в Explorer).

Работа с мультивыбором
Windows Photo Gallery также подерживает мультивыбор; вы можете выбрать несколько объектов и открыть их в одном приложении. Например, если вы выбираете три видео и в меню “открыть” выбираете Windows Media Player, то все три видео поместятся в плейлисте проигрывателя.
Есть два способа, как поддержать мультивыбор Photo Gallery в вашем приложении.

Первый, это сделать ваше приложение по-умолчанию для типа файлов (с помощью таких глаголов, как “открыть”, “воспроизвести” и т.д.). Подробнее об этом можно прочесть в еще одной статьей на MSDN.

Если вы хотите обеспечить поддержку мультивыбора без установки вашего приложения по-умолчанию для типа файлов, у вас есть решение. В статье о типах файлов на MSDN вкратце описывается что и как делать. Однако некоторая дополнительная информация не помешает.

Пример 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]
Источник: http://blogs.msdn.com/pix/
Перевод: Райкер

Комментарии

Комментариев нет...
Для возможности комментировать войдите в 1 клик через

По теме

Акции MSFT
420.55 0.00
Акции торгуются с 17:30 до 00:00 по Москве
Все права принадлежат © ms insider @thevista.ru, 2022
Сайт является источником уникальной информации о семействе операционных систем Windows и других продуктах Microsoft. Перепечатка материалов возможна только с разрешения редакции.
Работает на WMS 2.34 (Страница создана за 0.086 секунд (Общее время SQL: 0.064 секунд - SQL запросов: 53 - Среднее время SQL: 0.00122 секунд))
Top.Mail.Ru