Announcement

Collapse
No announcement yet.

Mp3

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mp3

    Hallo zusammen !
    Cih spiele mit diese Code MP3 ab:
    Code:
    Public Class Form1
    
      Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpszCommand As String, ByVal lpszReturnString As String, ByVal cchReturnLength As Integer, ByVal hwndCallback As Integer) As Integer
      Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Integer) As Integer
    
      #Region " MP3-Datei abspielen "
        Public Function MP3_Play(ByVal sFile As String, _
            ByVal sAlias As String) As Boolean
    
          Dim bResult As Boolean
    
    
          Dim sBuffer As String
          Dim lResult As Long
    
          sBuffer = Space$(255)
          lResult = GetShortPathName(sFile, sBuffer, Len(sBuffer))
    
          If lResult <> 0 Then
            sFile = Microsoft.VisualBasic.Left(sBuffer, InStr(sBuffer, vbNullChar) - 1)
    
            ' MCI öffnen
            lResult = mciSendString("open " & sFile & _
              " type MPEGVideo alias " & sAlias, 0, 0, 0)
    
            If lResult = 0 Then
              ' MP3 abspielen
              If mciSendString("play " & sAlias & _
                " from 0", 0, 0, 0) = 0 Then
                bResult = True
              End If
            End If
          End If
    
          MP3_Play = bResult
        End Function
      #End Region
    
      #Region " Wiedergabe stoppen und MCI schließen "
        Private Sub MP3_Stop(ByVal sAlias As String)
          mciSendString("stop " & sAlias, 0, 0, 0)
          mciSendString("close " & sAlias, 0, 0, 0)
        End Sub
      #End Region
    
      Private Sub cmdPlay_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdPlay.Click
        OpenDialog.DefaultExt = "mp3"
        OpenDialog.ShowDialog()
        TextBox_mp3.Text = OpenDialog.FileName
    
        MP3_Play(TextBox_mp3.Text, "MyAlias")
      End Sub
    
      Private Sub cmdPause_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdPause.Click
        mciSendString("pause " + TextBox_mp3.Text, 0, 0, 0)
      End Sub
    
      Private Sub cmdStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdStop.Click
        MP3_Stop("MyAlias")
      End Sub
    
    End Class

    Wenn in Dateiname leerzeichen erhalten, dann wird MP3 nicht mehr abgespielt.
    Kann mir jemand helfen wie ich das problemchen lösen kann ?

    Danke für die antworten !
    VB 2005/ VB2008/ VB6

  • #2
    Den Dateinamen in " einschließen
    Christian

    Comment


    • #3
      Das weise ich selber....das ist aber keine lösung !
      VB 2005/ VB2008/ VB6

      Comment


      • #4
        Das weise ich selber....das ist aber keine lösung !
        Interessant, wieso das keine Lösung sein sollte hier ensprechend " zu setzen!

        mciSendString("open " & sFile & _



        Eine andere Möglichkeit wird es wohl nicht geben - jedenfalls nicht bei der Art wie du MP3 abspielst. Offenbar ist dir nicht klar, warum es beim Vorhandensein von Leerzeichen nicht funktioniert.
        Zuletzt editiert von Christian Marquardt; 27.12.2009, 09:13.
        Christian

        Comment


        • #5
          Offenbar ist dir nicht klar, warum es beim Vorhandensein von Leerzeichen nicht funktioniert.
          Könntest du mir bitte erklären warum das ganze nicht funz ?

          Danke !
          VB 2005/ VB2008/ VB6

          Comment


          • #6
            Weil der Teil nach dem Leerzeichen als weiterer Parameter interpretiert wird, d.h. das Programm bekommt nicht Lied 1 als Parameter sondern einen Parameter Lied und einen weiteren Parameter 1, was dann eben darin resultiert das nichts mehr gespielt wird. Schickst Du aber "Lied 1" als Parameter dann ist für das System klar das der ganze Begriff ein einziger Parameter ist.

            Comment


            • #7
              Das weise ich selber....
              Denke er weiss das doch....
              Christian

              Comment

              Working...
              X