mciSendString Problem

17/01/2011 - 00:14 von Thomas Hoffmann | Report spam
Hallo, vor vielen Monaten hab ich das schonmal gefragt, konnte aber keiner recht helfen.
Unter W2K hab ich mal einen mp3-player programmiert, der für meine Zwecke viele
komfortable Dinge tut.
Seltsamerweise gibts immer wieder mp3-files, die die mcisendstring-Api zum Aufhàngen
bringen und ich weiß nicht woran das liegt.

Das ganze begann nach der Installation von einem Video-Bearbeitungsprogram von MAGIX.
Damals hat in einer englischen NG mal einer gesagt er meint dass das an codecs liegt. Hier
hab ich aber nun schon so viel rumprobiert ohne dass sich was tut.
Das ganze nervt, da manche mp3-files einfach nicht gespielt werden, exe freezt, ebenso die
IDE ohne Fehlermeldung. VLC oder Win-MP spielen die files problemlos!

zu dem code:
declaration
Private Declare Function API_mciSendString Lib "winmm.dll" Alias _
"mciSendStringA" (ByVal mciCommand As String, ByVal rString As String, ByVal _
rlength As Integer, ByVal hwDummy As Integer) As Long

hier freezt die Api dann alles ein:
API_mciSendString "open " & mmName & " type MPEGVideo alias mp3", 0, 0, 0
die nàchste Zeile wird dann schon nicht mehr ausgeführt, ich kann somit auch keine Fehler
auswerten...

mmname wird vorher mit mmName = GetShortPath(mmName) entsprechend gesetzt.

Fàllt irgendeinem von Euch hierzu was ein? Oder wo könnte ich sowas nochmal posten?

Herzlichen Dank für Ideen!
TH


Thomas Hoffmann
 

Lesen sie die antworten

#1 Wolfgang Badura
17/01/2011 - 16:40 | Warnen spam
Hallo Thomas!
"Thomas Hoffmann" wrote in message
news:igvu2o$f7f$00$

API_mciSendString "open " & mmName & " type MPEGVideo alias mp3", 0, 0, 0



Enthàlt der Dateiname Leerzeichen?

In diesem Fall nützen ergànzende Anführungszeichen:
zExec = "open """ & sFile & """ type " & sType & " shareable alias TempMCI"
und dann
nResult = mciSendString(zExec, 0, 0, 0)

Allerdings gibt es tatsàchlich ein Problem mit Codecs.

Auch ich hatte einmal einen MP3-File, den ich mit mciSendString nicht
abspielen konnte, VLC aber schon.
Den Fehler habe ich nie gefunden.
Seltsamerweise verwendet VLC aber auch mciSendString.
Der Unterschied liegt wahrscheinlich in der Zuordnung des Codecs.

Wolfgang

Ähnliche fragen