Reproductor de MP3 en Visual Basic NET
Esta aplicación usa el OCX de Windows Media Player 9 mediante la agregación de una referencia en el proyecto (el OCX se encuentra en la lista de objetos COM). En esta aplicación el OCX se muestra al usuario y se usan sus propios botones de control, por lo que se necesita poco código para que funcione. Para reproducir el programa es necesario tener instalado Windows Media Player 9.
Este ejercicio muestra cómo usar el control ActiveX de Windows Media Player 9 incluyéndolo en una aplicación de Visual Basic .NET. Este control ActiveX nos proporciona funcionalidades de reproducción de archivos multimedia (mp3, wav, wma, avi, etc...) sin que tengamos que crear código específico para esas funciones.
Pasos para crear el ejercicio:
1 - Instalar los
programas necesarios:
- Microsoft Visual Basic .NET y Windows.NET Framework
Software Development Kit (SDK): al instalar Visual Basic .NET se suele
instalar también Windows.NET Framework Software Development Kit (SDK).
- Windows Media Player 9 Series: se trata de la versión a
la que se refiere este ejercicio, versiones anteriores a la 9 no funcionarán adecuadamente.
- Windows Media Player 9 Series SDK, necesario para el desarrollo
del programa, además contiene documentación de referencia, ejemplos de código, utilidades...
2 - Añadir el control ActiveX al proyecto de Visual Basic .NET:
- en el cuadro de
herramientas, mostrar la pestaña "Componentes".
- con el menú contextual "Agregar o quitar componentes" abrimos el diálogo "Personalizar
cuadro de herramientas".
- en la pestaña "Componentes COM" buscamos y marcamos "Windows
Media Player". Si no apareciese en la lista de componentes, con el botón
"Examinar" navegamos en busca de la librería wmp.dll
(suele estar en el directorio system32).
- de esa manera se añade un elemento nuevo en el cuadro de herramientas, llamado
Windows Media Player, que permite ser incorporado al formulario como cualquier otra
herramienta, bajo el nombre de AxWindowsMediaPlayer1, este nombre
puede cambiarse por otro más útil, en el ejercicio que nos ocupa se denomina
ocxPlayer y así aparece en el código.
3 - En el cuadro OpenFileDialog1 se filtran los archivos mediante 3 extensiones: MP3, AVI y M3U (listas de reproducción de Wimamp), pero puedes ajustar estos filtros a tu gusto.
4 - Al usar el menú "Generar solución" tendremos en la carpeta correspondiente (por
defecto \bin) 3 archivos:
- ejecutable de la aplicación (ejemplo: MP3 Player.exe).
- las librerías AxInterop.WMPLib.dll
y Interop.WMPLib.dll.
Es necesario tener los 3 archivos juntos en la misma carpeta para que el programa
funcione adecuadamente.
5 - La manera de evitar la necesidad de las 2 librerías nombradas en el punto anterior sería instalando el PIA (primary interop assembly) de Windows Media Services en la Global Assembly Cache (GAC) y registrando después la librería mediante RegSvr32. Aunque hay documentación al respecto (ver este artículo de Microsoft), es un tema complejo que todavía no he sido capaz de solucionar.
Pulsa aquí para ver el código completo.