
Los ficheros mid pueden reproducirse de la siguiente forma :
Private Declare Function mciSendString Lib "winmm.dll" Alias _
"mciSendStringA" (ByVal lpstrCommand As String, ByVal _
lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal _
hwndCallback As Long) As Long
Dim ret As Integer
'lo de las dobles comillas es para evitar problemas con nombres largos
ret = mciSendString("open ""c:\windows\media\canyon.mid"" type sequencer alias cancion", 0&, 0, 0)
ret = mciSendString("play cancion wait", 0&, 0, 0)
ret = mciSendString("close cancion", 0&, 0, 0)
Con esto tu programa se detiene hasta que finaliza la "canción".
Si quieres que emnpiece a sonar y siga tu programa debes hacer :
ret = mciSendString("open ""c:\windows\media\canyon.mid"" type sequencer alias cancion", 0&, 0, 0)
ret = mciSendString("play cancion", 0&, 0, 0)
Y cuando quieras que pare de sonar (o antes de cerrar tu programa) :
Dim ret As Long
ret = mciSendString("stop cancion", 0&, 0, 0)
ret = mciSendString("close cancion", 0&, 0, 0)

