Doch es gibt eine Möglichkeit: mit ShellExecute wie oben angegeben.
Wenn man den Pfad zur MP3-Datei als Parameter übergibt, sollte jeder (vernünftige) MP3-Player das auch erkennen können und die entsprechende Datei öffnen. Das funktioniert auch, wenn es nicht der Standard-MP3-Player ist.
[Edit]
Also in etwa so (Pfade müssen natürlich noch angepasst werden):
ShellExecute(0, 'open', PChar('C:\irgendwo\EinMP3_Player.exe'), PChar('C:\EinOrdner\irgendwas.mp3'), nil, SW_SHOWNORMAL);
Eventuell bietet es sich an, den Pfad zur MP3-Datei in Anführungszeichen zu setzen, wenn der Pfad Leerzeichen enthält.
ShellExecute(0, 'open', PChar('C:\irgendwo\EinMP3_Player.exe'), PChar('"C:\Ein anderer Ordner\irgendwas.mp3"'), nil, SW_SHOWNORMAL);
[/Edit]
MfG
Binärbaum