MIDI Player mit ShellExecute aufrufen? Macht doch keinen Sinn als Hintergrundmusik z.B. in einem Spiel.
Wenn du direkt und ohne TMediaPlayer arbeiten willst, verwende "MCISendString". Damit kannst du direkt mit der Soundkarte kommunizieren und WAVE's oder MIDI's abspielen. Aber um das Loop beim MIDI musst du dich leider selbst kümmern.
http://www.swissdelphicenter.ch/de/showcode.php?id=1127
Ein paar Befehle:
Open, Close, Play, Stop, Rewind
Unit MMSystem muss eingebunden sein.
Wenn du nähere Fragen zu MCISendString hast, frage einfach.
Gruß
blackdrake