Плагины для Windows Media Player (11+) C#

Можно ли создать плагин WMP11+ (ну, конечно, чем больше версий, тем лучше, но я пока только ориентируюсь на Vista) в C#? Все ресурсы, которые я нашел, показывают это для C++, но не для C#.

Я пытаюсь создать плагин, который взаимодействует с WMP по аналогии с плагином Last.FM/ "Now Playing" (это плагин класса "Background"), в котором он находится в фоновом режиме и делает вещи, а не общее приложение, которое хочет получить доступ к данным WMP. Образец WMP Managed в Windows SDK показывает только пример взаимодействия с библиотекой WMP /"control" из отдельного приложения.

3 ответа

Решение

Может быть не совсем то, что вы ищете, но вы можете взглянуть на код этого проекта: http://wmppluginsnet.codeplex.com/

Я не очень знаком с архитектурой плагинов WMP, но пока механизм основан на COM, тогда да, вы можете писать плагины для C#. COM - это независимый от языка метод предоставления API. В C# и большинстве других языков.Net можно создавать компоненты COM и, следовательно, подключаться к архитектуре COM.

Есть несколько проблем, которые идут с этим. Вплоть до 2.0SP1 было возможно создать только одну версию CLR в одном процессе. Эффект архитектуры плагинов заключается в том, что первый плагин.Net устанавливает версию CLR для этого процесса. Так, например, если ваш плагин основан на 1.0, и он загружается первым без проблем. Но любым последующим плагинам, которые хотят работать в 2.0 CLR, не повезло.

Можете ли вы опубликовать несколько ссылок на образцы, о которых вы говорите?

Тот же автор, на которого вы ссылались, Янье Муньос, также опубликовал статью на C# ( неработающая старая ссылка) по написанию плагинов для Windows Media Player. Вы, вероятно, можете использовать что-то из этого.

Другие вопросы по тегам