Использование элемента управления Медиаплеер Windows в Microsoft Visual Studio

[Функция, связанная с этой страницей, Медиаплеер Windows SDK, является устаревшей функцией. Он был заменен MediaPlayer. MediaPlayer оптимизирован для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует по возможности использовать MediaPlayer вместо пакета SDK для Медиаплеер Windows. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Элемент ActiveX Медиаплеер Windows серии 9 или более поздней версии можно добавить в приложение платформа .NET Framework с помощью панели элементов в Visual Studio.

Добавление элемента управления Медиаплеер Windows

Перед созданием проекта убедитесь, что на компьютере установлена последняя версия Медиаплеер Windows и пакет SDK для Медиаплеер Windows.

Запустите Visual Studio, а затем создайте проект.

В Visual Studio откройте панель элементов.

Если Медиаплеер Windows не отображается в разделе Компоненты панели элементов, сделайте следующее:

  1. Щелкните правой кнопкой мыши на панели элементов и выберите пункт Выбрать элементы. Откроется диалоговое окно Настройка панели элементов .

  2. На вкладке Com Components (Компоненты COM) выберите Медиаплеер Windows.

    Если Медиаплеер Windows не отображается в списке, нажмите кнопку Обзор и откройте Wmp.dll, которая должна находиться в папке Windows\System32.

  3. Нажмите кнопку ОК. Элемент управления Медиаплеер Windows будет размещен на текущей вкладке Панели элементов.

Теперь можно выбрать Медиаплеер Windows на панели элементов и добавить его в форму.

Visual Studio присваивает элементу управления Медиаплеер Windows имя по умолчанию, например axWindowsMediaPlayer1. Вы можете изменить имя на более легко запоминаемое, например "Player".

Добавление элемента управления Медиаплеер Windows из панели элементов также добавляет ссылки на две библиотеки, созданные Visual Studio: AxWMPLib и WMPLib. Их можно найти в Обозреватель решений в разделе Ссылки.

Чтобы упростить использование объектов в пространстве имен Проигрывателя, необходимо включить пространство имен в директивы using или imports файлов следующим образом:

using WMPLib;
imports WMPLib

Директива гарантирует, что вы можете ссылаться на объекты Player без полного уточнения их имен.

Примечание

Элемент управления Медиаплеер Windows является объектом AxWindowsMediaPlayer из пространства имен AxWMPLib. Однако класс AxWindowsMediaPlayer использует типы данных, интерфейсы и другие элементы из пространства имен WMPLib .

 

Настройка видимости элемента управления

При первом добавлении элемента управления Медиаплеер Windows в форму он будет отображаться. Если вы не хотите использовать видимое изображение проигрывателя в приложении, скройте проигрыватель по умолчанию, задав одно из следующих свойств:

Свойство Значение
uiMode "невидимый" (см . Player.uiMode.)
Visible "false"
Size.Width 0
Size.Height 0

 

Эти свойства можно задать в коде или в окне Свойства, когда элемент управления Медиаплеер Windows выбран в конструкторе форм.

Совместимость объектной модели элемента управления

Объектная модель для элемента управления Медиаплеер Windows в платформа .NET Framework в основном та же, что и в неуправляемом коде и скрипте. Однако существуют различия в том, как предоставляются элементы:

  • Большинство объектов предоставляются под именем базового COM-интерфейса. Например, объект Playlist предоставляется как IWMPPlaylist.
  • Некоторые интерфейсы имеют более поздние версии. Например, IWMPMedia получил дополнительные функциональные возможности в IWMPMedia2 и IWMPMedia3. Если вы объявляете объект как IWMPMedia, обычно у вас есть доступ к функциональным возможностям всех версий интерфейса. Однако IntelliSense® не распознает методы или свойства интерфейсов более поздних версий, а редактор Visual Basic .NET не будет автоматически исправлять прописные буквы. Чтобы получить все преимущества IntelliSense и других функций Visual Studio, объявите объект с помощью последней версии интерфейса, например IWMPMedia3.
  • Индексированные свойства (C#) или свойства по умолчанию (Visual Basic .NET) отсутствуют. Например, чтобы получить playlist.item, необходимо вызвать метод доступа IWMPlaylist.get_Item в C# или получить свойство IWMPlayist.Item в Visual Basic .NET.
  • Из-за конфликта именования между свойством Медиаплеер Windows Controls и свойством Controls, предоставляемым каждым элементом управления, версия проигрывателя этого свойства называется CtlControls в контексте элемента управления ActiveX. (Однако это не так при создании проигрывателя программным способом, а не в качестве элемента управления ActiveX.)

Используйте обозреватель объектов в Visual Studio, чтобы найти правильные имена API для методов и объектов в пространствах имен AxWMPLib и WMPLib .

Распространение приложения

При распространении приложения обязательно установите AxInterop.WMPLib.dll и Interop.WMPLib.dll в папке приложения. Кроме того, необходимо убедиться, что на компьютере пользователя установлена требуемая версия Медиаплеер Windows.

Программное создание элемента управления Медиаплеер Windows

Внедрение элемента управления Медиаплеер Windows в решение C#

Внедрение элемента управления Медиаплеер Windows в решение Visual Basic .NET