Reproducir archivo audio

¿Y quizá puedas ayudarme ok?
Estoy realizando un programa en el cual nnecesito que al pinchar sobre una etiqueta, que es el nombre de la canción, automáticamente se reproduzca. Lo ideal seria poder integrar un reproductor intrínseco en mi programa pero también podría ser que se abriera un programa externo como puede ser windows media o winamp, los cuales tiene casi todo el mundo...
No se si me he explicado bien pero... Si puedes ayudarme te lo agradecería enormemente.
Respuesta
1
::Te explicas muy bien, y si necesitas realmente una interfaz para controlar el sonido (o visualizar algo también) sí que te recomiendo Windows Media Player u otro.
::Pero como supongo que no es el caso, en tu etiqueta puedes incluir la llamada a una API de Windows que puede reproducir tu sonido, por tanto no necesitas tener nada instalado en el lado del cliente.
::(1)::Declara la API "smdPlaySound" de Windows en un módulo aparte, no en el formulario:
'--------------------------
Declare Function sndPlaySound Lib "winmm.dll" _
Alias "sndPlaySoundA" _
(ByVal lpszSoundName As String, _
ByVal uFlags As Long) As Long
' flag values for uFlags parameter
Public Const SND_SYNC = &H0 ' play synchronously (default)
Public Const SND_ASYNC = &H1 ' play asynchronously
Public Const SND_NODEFAULT = &H2 ' silence not default, if sound not found
Public Const SND_LOOP = &H8 ' loop the sound until next sndPlaySound
Public Const SND_NOSTOP = &H10 ' don't stop any currently playing sound
'--------------------------
::(2)::Incluye el el evento click de tu etiqueta que quieres usar para reproducir un sonido lo siguiente:
'--------------------------
Dim rc As Integer
rc = sndPlaySound("c:\windows\chimes.wav", SND_ASYNC)
'--------------------------
::Por supuesto, cambia el sonido anterior ("c:\windows\chimes.wav") por el tuyo!! ;)
::(3)::Si prefieres que tu sonido se repita indefinidamente reemplaza en el código anterior "SND_ASYNC" por "SND_ASYNC + SND_LOOP"
'--------------------------
::(FIN)Para finalizar, si quieres poder parar el sonido incluye otra etiqueta, por ejemplo, con el siguiente código en el evento click:
'--------------------------
Dim rc As Integer
rc = sndPlaySound("", SND_NODEFAULT)
'--------------------------
::De todas maneras si quieres un proyecto como ejemplo indícame tu mail y te lo envío.
::AH! Y si necesitases ejecutar sonidos simultáneamente dímelo...
::
De nuevo Luis:
::¿Cómo te fue? ¿Necesitaste reproducir varios sonidos a la vez? Si es el caso verías que no es muy difícil...
::Ah! No te olvides puntuar la respuestas.
::

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas