reproducir sonido en formulario?

Colapsar
X
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar todos
nuevos mensajes

  • reproducir sonido en formulario?

    hola compañeros, buenos días para todos.

    soy nuevo por aquí, y he venido buscando su preciada ayuda.

    tengo la idea de crear un juego para la compu, con sonidos y todo eso.
    me animé al basic 6, por que hace unos años lo había probado pero me frustró el no encontrar los elementos para incertar.
    hoy con un poco más de experiencia, aunque tardé, fui encontrando todo.

    debería aclarar que soy una persona ciega, que uso un lector de pantalla llamado jaws, y que esta versión no tiene todos sus elementos correctamente etiquetados para que el lector de pantalla los verbalize, pero probando un poco y tocando todo lo que había por ahí, encontré todo lo que por ahora me sirve.

    bueno, voy al punto.

    como mi aplicación se va a basar fundamentalmente en lo sonoro, lo primero que busqué, es como reproducir sonidos.

    bueno, como sabrán, encontré varias formas, con el complemento de windows media player, con otro que es el de multimedia control 6.0, y la función de snd play sound.

    los probé a los tres, pero ninguno me funcionó.

    y aquí está mi consulta, para ver si me pueden ayudar a descubrir por que no suena nada.

    comenzemos por el que me parece es el más sensillo de poner en práctica, y si no sirve vemos los otros.

    la función de snd play sound.

    después de mucho buscar por la web, encontré esta página.
    http://www.mileti.com.ar/sonidowav.html

    parece que está muy claro, con todos los parámetros necesarios para hacerlo funcionar.
    pero como dije, fue inútil intentarlo.

    si me permiten, les muestro lo que hice, y que es lo que necesito hacer.

    en mi formulario, copié este código.

    Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
    private Const SND_ASYNC = &H1

    private sub sonido()
    Call sndPlaySound(App.Path & "\applause.wav", SND_SYNC)
    End sub

    lo que necesito hacer, es que suene un sonido sin que el usuario le tenga que decir que suene, es decir que cuando llegue a ese procedimiento, que suene.
    yo suponía que así iba a ser suficiente para reproducir el sonido, pero no sonó nada nunca, y eso que cambiaba el nombre del wav, la ruta a donde estaba, y ejecutaba con f5 y se abría pero no sonaba nada.
    en un momento, supuse que era por que había que llamar al procedimiento para que se ejecute, y además que tardé un montón probando la llamada al procedimiento, que no me funcionaba como lo había leído, es decir tan solo poniendo en una línea el nombre del procedimiento, y hasta usando la palabra call, pero hasta que encontré que había que ponerlo dentro de otro sub, y cuando llegó el momento que me lo tomó, tampoco sonaba nada.

    por favor, ustedes que la tienen mucho más clara que yo, podrían ayudarme a comprender por que no me funciona?

    desde ya gracias,

    un saludo.

  • #2
    Buenas estimado.

    Por si te sirve yo reproduzco sonidos con esto:

    iResult = mciExecute("Play C:\alarm.wav")

    Poner esto en declaraciones:

    Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long

    Saludos
    --------------------------------
    Si eres agradecido, obtendrás más...

    YAcosta

    Comentario


    • #3
      genial compañero, me fue de mucha utilidad esta funcion.
      muchas gracias.
      un saludo.

      Comentario

      Trabajando...
      X