Das Entpacken ist einfach:
Delphi-Quellcode:
with TResourceStream.Create(hInstance, 'MIDI1', 'MIDI') do
begin
SaveToFile(TempPath + 'MIDI1.mid');
Free;
end;
(der zweite Parameter ist der Ressourcen-Name und der dritte der Ressourcen-Typ aus deiner RC-Datei)
Das Problem mit MIDIs ist, dass du, wenn du sie selbst abspielst, auf das Timing achten musst. Du müsstest also jede Note genau zum passenden Zeitpunkt senden. Diese Arbeit nimmt der MediaPlayer dir ab.
Zweite Variante - fällt mir gerade so ein: du könntest einen
OLE-Container nehmen und die MIDIs als
OLE-Objekte da hinein packen. Ggf. kannst du sie von dort aus direkt abspielen (bin mir aber absolut nicht sicher ob das überhaupt geht).