Set objPlayer = CreateObject("WMPlayer.OCX" )
Set objMediaCollection = objPlayer.MediaCollection
Set objTempList = objMediaCollection.getByName("Scrambled Eggs")
Set objSong = objTempList.Item(0)
objSong.setItemInfo "Name", "Yesterday"
Antes de continuar, deberíamos señalar que esta secuencia cambia el título de la canción únicamente en el Reproductor de Windows Media. Cuando se visualice la lista de canciones en el Reproductor de Windows Media, la canción anteriormente conocida como Scrambled Eggs aparecerá ahora como Yesterday. Sin embargo, esta secuencia no cambia el archivo .WMA en sí: el nombre del archivo permanece tal cual y si hace clic con el botón secundario del mouse (ratón) y examina Propiedades del resumen, el título seguirá siendo Scrambled Eggs. Por desgracia, no conocemos un método para cambiar la propiedad Title en el propio archivo; lo único que podemos hacer es cambiar la forma en que el título se muestra en el Reproductor de Windows Media.
Nota. ¿Cómo dice? ¿No sabía que se podían crear secuencias de comandos para el Reproductor de Windows Media? Se conoce que no ha visitado nunca Dr. Scripto’s Fun Zone (en inglés). |
Si se conforma con sólo cambiar el título que aparece en el Reproductor de Windows Media, puede continuar leyendo. Como puede observar, nuestra secuencia comienza creando una instancia del objeto WMPlayer.OCX, que es simplemente el objeto que proporciona acceso mediante programación al Reproductor de Windows Media. A continuación, utilizamos estas dos líneas de código para enlazar con la colección de medios del Reproductor de Windows Media y devolver una lista de todas las canciones que tienen el título Scrambled Eggs:
Set objMediaCollection = objPlayer.MediaCollection
Set objTempList = objMediaCollection.getByName("Scrambled Eggs")
Y sí, necesitamos devolver una colección: el motivo es que el Reproductor de Windows Media permite tener varias canciones con el mismo título. Vamos a suponer que ha asignado a todas las canciones unos títulos exclusivos; eso nos permite tomar un pequeño atajo al enlazar con la canción y cambiar el título. Si tiene varias canciones con el título Scrambled Eggs, puede utilizar esta secuencia modificada para cambiar el título de todas ellas:
Set objPlayer = CreateObject("WMPlayer.OCX" )
Set objMediaCollection = objPlayer.MediaCollection
Set objTempList = objMediaCollection.getByName("Scrambled Eggs")
For i = 0 to objTempList.Count - 1
Set objSong = objTempList.Item(i)
objSong.setItemInfo "Name", "Yesterday"
Next
Ahora, volvamos a la secuencia de comandos en la que se asume que sólo tiene una canción titulada Scrambled Eggs. Si ese es el caso, sólo necesitamos esta línea de código para enlazar directamente con la única canción que tiene dicho título (omitiendo completamente el bucle For Next que tuvimos que utilizar en la secuencia anterior):
Set objSong = objTempList.Item(0)
Una vez realizada la conexión, cambiar el título resulta tan sencillo como utilizar el método setItemInfo para modificar la propiedad Name de la canción a Yesterday:
objSong.setItemInfo "Name", "Yesterday"
El resto, como se suele decir, es historia.
Casualmente, a los chicos del scripting también nos gusta más el título Scrambled Eggs; al menos, queda bien con la canción I Am the Walrus (“I am the egg man, they are the egg men”). Pero los Beatles nunca nos pidieron nuestra opinión sobre esta canción. Deseamos que las cosas les fueran bien aún sin nuestra ayuda. |