vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Windows API
MP3 via API abspielen 
Autor: neuerProg.
Datum: 07.05.05 22:06

Hallo,
ich habe mir unter "Tipps & Tricks" von vbarchiv.net den Code geholt, wie man MP3`s via API abspielen kann. Der Code sieht wie folgt aus:

' zunächst die benötigte API-Deklaration
Private Declare Function mciSendString Lib "winmm.dll" _
Alias "mciSendStringA" (ByVal lpszCommand As String, _
ByVal lpszReturnString As String, _
ByVal cchReturnLength As Long, _
ByVal hwndCallback As Long) As Long

Abspielen einer MP3-Datei

' MCI öffnen
If mciSendString("open " & sFile & _
" type MPEGVideo alias MyMP3", 0, 0, 0) = 0 Then
' MP3 abspielen
mciSendString "play MyMP3 from 0", 0, 0, 0
End If

Wiedergabe beenden und MCI schließen

mciSendString "stop MyMP3", 0, 0, 0
mciSendString "close MyMP3", 0, 0, 0

Jetzt möchte ich aber in dem FETT gedruckten Teil für "&sFile" keinen festen Pfad angeben, sondern mit "app.Path" einen variablen Pfad verwenden, damit mein Programm auch mit dem "Verpackungs und Weitergabe assistenten" auf anderen Rechnern verwendet werden kann, wo die Mp3 in einem anderen Verzeichnis liegt. Jetzt habe ich das so geschrieben:

If mciSendString("open " &"App.Path\titel.mp3 "&_
" type MPEGVideo alias MyMP3", 0, 0, 0) = 0 Then
' MP3 abspielen
mciSendString "play MyMP3 from 0", 0, 0, 0
End If

Wenn ich das so schreibe, dann passiert leider garnichts! Was mache ich falsch?

Mfg

neuerProg.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: Freggel
Datum: 07.05.05 22:36

Hallo,

auf den ersten Blick sieht es so aus, als müsstest du App.path\titel.mp3 trennen.

Probier mal so:

If mciSendString("open" &  App.Path & "\titel.mp3 " &
ich bin mir da allerdings nicht sicher..

Gruß Freggel
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: ModeratorMartoeng (Moderator)
Datum: 07.05.05 23:55

Du solltest die Pfadangabe so schreiben:

"open" & IIf(Right(App.Path,1)="\",App.Path, App.Path & "\") & "titel.mp3"

Damit prüft er, ob das letzte Zeichen des Pfades ein Backslash ist (kann ja theoretisch passieren). Wenn dem so ist, hängt er keinen dran, ansonsten tut er genau das.


vbarchiv.dll (Freeware), Tutorials uvm. auf http://www.martoeng.com.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: neuerProg.
Datum: 08.05.05 18:47

hab das so ausprobiert, aber ich höre trotzdem keinen Ton!?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: Freggel
Datum: 09.05.05 09:00

Hmmm,

vielleicht eine blöde Frage, aber hast du sowas u.a. in einem Modul stehen?


' ermittelt den Dos-Pfadnamen, ist erforderlich weil MCI Treiber Leerstellen  
  ' als Separator interpretieren
  Retval = GetShortPathNameA(FileName, Buffer, Len(Buffer))
  FileName = Left$(Buffer, Retval)
Könnte doch daran liegen oder nicht?

Die API erwartet doch normaler weiße den kurzen Dos Dateinamen...


War nur nee Idee..... ( bitte, nicht hauen )

Gruß Freggel
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: ModeratorMartoeng (Moderator)
Datum: 09.05.05 15:31

du musst, wenn du einen langen dateinamen verwenden willst auch den in anführungszeichen setzen! also vor und hinter sFile dann noch Chr(34) setzen.


vbarchiv.dll (Freeware), Tutorials uvm. auf http://www.martoeng.com.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: TTSAddict
Datum: 13.06.05 09:55

Für derartige Aufgaben verwende ich gern das Filesystemobject, da man das sowieso (zumindest meine Wenigkeit *fg*) in jedem zweiten Projekt verwendet.

DOSPath = FSO.Getfile(Dateipfad).Shortpath
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: MP3 via API abspielen 
Autor: ModeratorMartoeng (Moderator)
Datum: 13.06.05 18:17

Den kurzen Dateinamen kann man sich sparen.
Wird der Dateiname in Anführungszeichen eingeschlossen ist kein kurzer Dateiname nötig!


vbarchiv.dll (Freeware), Tutorials uvm. auf http://www.martoeng.com.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel