PDA

Показать полную графическую версию : [addon] MPC-HC Shell Extension 1.0.0.1


Страниц : [1] 2

wolkow70
21-02-2012, 18:08
MPC-HC Shell Extension 1.0.0.1
Расширение контекстного меню для Media Player Classic - Home Cinema.
Тип интеграции аддона - SVPACK.

Небольшое дополнение к популярному Media Player Classic - Home Cinema.
Создает в контекстном меню файлов пункты:

http://s54.radikal.ru/i145/1303/ed/55ff12a73e0a.png (http://www.radikal.ru)

В типовой установке этого расширения пункты отображаются только для ассоциированных с Media Player Classic - Home Cinema файлов.

Немного поразмыслив, мне удалось найти способ заставить эти пункты отображаться для всех поддерживаемых плеером типов файлов, даже если они не ассоциированы с Media Player Classic - Home Cinema.
Делается это через ключи реестра отвечающие за системные файловые ассоциации.

К примеру так:
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.flv\shellex\ContextMenuHandlers\MPCHCShe llExt]
@="{A2CF4243-6525-4764-B3F5-2FCDE2F47989}"

То есть, мы прописываем расширение оболочки не только в ключи файловых ассоциаций
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\mplayerc.flv\shellex\ContextMenuHandlers\MPCHCShellExt]
@="{A2CF4243-6525-4764-B3F5-2FCDE2F47989}",

но и в ключи системных файловых ассоциаций, для чего эти ключи специально создаются при работе скрипта установки аддона.
В результате, если даже, тот или иной файл ассоциирован с другим приложением, пункты контекстного меню будут отражены и в этом случае.
Оказывается это очень удобно. Ассоциируем медиафайлы с каким-нибудь более продвинутым плеером, но всегда имеем возможность удобно открыть их в Media Player Classic - Home Cinema.

Аддон целесообразно устанавливать после Media Player Classic - Home Cinema.
Файл расширения устанавливается в собственную директорию установки Program Files\MPC-HC Shell Extension, где создается и деинсталлятор расширения оболочки.

Аддон создает в Главном меню Пуск ярлыки, отвечающие за удаление, ре-ререгистрацию и де-регистрацию расширения.

Возможно использование на живой системе. Ключ тихой установки /S.

Ссылка для скачивание аддона:
http://rusfolder.com/35501516

Вариант аддона с поддержкой установки на 64-битные системы (добавлена библиотека MPCHCShellExt64.dll).
Определение системы при установке автоматическое.
Ссылка для скачивания:
http://rusfolder.com/35772418

apozlevich
21-02-2012, 19:15
Эм.. Спасибо за расширение, порадовала идея, но нельзя ли упростить до твика?

wolkow70
21-02-2012, 20:13
Эм.. Спасибо за расширение, порадовала идея, но нельзя ли упростить до твика? »

До какого твика? :) Там код скрипта на несколько сотен строк. Для каждого расширения вносятся записи в реестр и команды на удаление в деинсталляторе. После удаления такие записи нельзя оставлять в реестре.

apozlevich
21-02-2012, 20:13
Вот без деинсталлятора :)

wolkow70
21-02-2012, 20:25
Вот без деинсталлятора »

Вы в ручную что ли будете удалять кучу записей из реестра?

apozlevich
21-02-2012, 20:26
Вы в ручную что ли будете удалять кучу записей из реестра? »
А зачем мне их удалять? Я не собираюсь переходить с MPC. Кстати, а почему их так много?

wolkow70
21-02-2012, 20:31
А зачем мне их удалять? Я не собираюсь переходить с MPC. Кстати, а почему их так много? »

Потому, что форматов много поддерживается, и для каждого создается свой ключ.

Я не собираюсь переходить с MPC »

Это дело индивидуальное. Я ведь не для Вас одного выложил. Кому то и не понравится.

apozlevich
21-02-2012, 20:34
Потому, что форматов много поддерживается, и для каждого создается свой ключ. »
Чорт, не подумал.

Да и вообще, можно написать простенький GUI, который будит определять, какие ключи вносить, раз уж простой пункт в контекстном меню требует так много заморочек. На чем скрипт-то (может помогу с GUI)?

wolkow70
21-02-2012, 20:57
На чем скрипт-то (может помогу с GUI)? »

Скрипт на NSIS. Раскрываете компоненты и выбираете, какие форматы отмечать, а какие нет.
http://i008.radikal.ru/1202/05/6711abc45340.png (http://www.radikal.ru)

apozlevich
21-02-2012, 21:18
Я имел в виду перенастройку уже установленного расширения

wolkow70
22-02-2012, 10:23
Я имел в виду перенастройку уже установленного расширения »
Сие невозможно. Что установлено, то и удаляется. Или ручками.

apozlevich
22-02-2012, 12:27
Или ручками. »
Ну вот и вместо ручек предлагаю GUI.

greg_b
25-02-2012, 23:43
wolkow70, а в шапку 300 кило прицепить нельзя? Смешно смотреть - подождите 30 секунд, а то наш трафик того....

wolkow70
27-02-2012, 09:53
а в шапку 300 кило прицепить нельзя? Смешно смотреть - подождите 30 секунд, а то наш трафик того.... »

Добавил аддон во вложение.

mariolast
28-02-2012, 02:06
wolkow70,
Можно ли выложить одним твиком реестра, какие изменения вносяться в реестр? Есть желание встроить это прямо в инсталлятор Медиаплеера.

wolkow70
28-02-2012, 08:16
какие изменения вносяться в реестр? »

1.Регистрация самой MPCHCShellExt.dll в системе.

2. Для каждого нужного и поддерживаемого плеером расширения дополнительно создается ключ реестра по шаблону:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\.flv\shellex\ContextMenuHandlers\MPCHCShe llExt]
@="{A2CF4243-6525-4764-B3F5-2FCDE2F47989}"

Причем, в этой разделе для некоторых расширений уже есть ключи (например для AVI, MPG, WMV и других системных расширений), поэтому в эти ключи добавляется только само расширение:

\shellex\ContextMenuHandlers\MPCHCShe llExt]
@="{A2CF4243-6525-4764-B3F5-2FCDE2F47989}"

В сборке деинсталлятор потом все это корректно удаляет (полностью ключи или подключи для уже существовавших ключей, де-регистрацию и удаление модуля).

Твика у меня нет, так как изменения в реестре вносятся коммандами скрипта сборки.
Меня устраивает вариант инсталлятора, так как можно оперативно отметить только нужные расширения. Кроме того, деинсталлятор проверяет ключи на наличие других данных, и если данных нет, то удяляет весь ключ, а если есть, то только свое значение.

biork
09-12-2012, 02:28
На семёрке должно работать?

wolkow70
09-12-2012, 09:05
На семёрке должно работать? »

Работает.

truvo
09-12-2012, 19:50
Аддон целесообразно устанавливать после Media Player Classic - Home Cinema. »Предлагаю добавить это в nfo

Joykotik
16-12-2012, 10:59
Аддон полезный, но у меня на семёрке работает после инсталляции, а после перезагрузки системы уже нет, в чём может быть причина?




© OSzone.net 2001-2012