Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Visual Basic clásico (http://www.forosdelweb.com/f69/)
-   -   Reproducir mp3 pero de una manera particular (http://www.forosdelweb.com/f69/reproducir-mp3-pero-manera-particular-400556/)

renga73 08/06/2006 00:20

Reproducir mp3 pero de una manera particular
 
Hola mi duda es la siguiente:
Tengo un check1, un label1, y agregue CommonDialog1.
Cuando clickeo en el check1 se me abre el cuadro para buscar archivos, l configure solo para *.mp3 y *.wav. Y cuando busco el archivo lo clickeo y pone me guarda toda la direccion en el label1.
Aqui el codigo:
Private Sub Check1_Click()
CommonDialog1.ShowOpen
Label1.Caption = CommonDialog1.FileName
End Sub

Bueno ahora tengo un boton1 q lo q quiero q haga es q al clickearlo me ejecute ese mp3 o wav.

Codigo del boton:
Private Sub Command1_Click()
mciExcecute ("Play " & Label1.Caption)
End Sub

El problema surge q si agrego un mp3 el cual contenga espacios en blanco me tira error. Por ejemplo: C:\Aerosmith crazy.mp3 ESTO NO ANDARIA pero si seria C:\AerosmithCrazy.mp3 o C:\Aerosmith-Crazy.mp3 ESTO SI ANDARIA.
Como puedo solucionar el problema este sin modificar el archivo en su carpeta

marcos1979 08/06/2006 00:40

Convierte la ruta del archivo a ruta corta con esto
Declara:

Código:

Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" _
    (ByVal lpszLongPath As String, ByVal lpszShortPath As String, _
    ByVal cchBuffer As Long) As Long

Private Function LongToShort(ByVal s_LongPath As String) As String

    Dim sBuf As String * 260
    Dim i As Long
   
    i = GetShortPathName(s_LongPath, sBuf, Len(sBuf))
    LongToShort = Left$(sBuf, i)

End Function

Para usarla:

mciExecute "Play " & LongToShort(Label1.Caption)

mciExecute "Stop " & LongToShort(Label1.Caption)

Un saludo

renga73 09/06/2006 11:34

Gracias ya lo adapte


La zona horaria es GMT -6. Ahora son las 07:51.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.