Zitat von
Marvel:
Ich hab zwar nich so richtig die Ahnung, warum, aber wenn ich nen Filename ohne Leerzeichen hab, gehts.
Ist FileName z.B. 'Ich habe mehrere Leerzeichen.mid', dann evauiert der gesamte Commandsting zu 'open Ich habe mehrere Leerzeichen.mid type sequencer alias sound'. Da ein Wort immer ein Parameter sein muss, wird der Interpreter mit "habe", "mehrere" und "Leerzeichen.mid" wenig anfangen können.
Wenn du den Commandstring wie folgt übergibst, dann wird '"Ich habe mehrere Leerzeichen.mp3"' als ein Parameter aufgefasst.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const
FileName = '
"Ich habe mehrere Leerzeichen.mid"';
begin
MCISendString(PChar('
open ' + FileName + '
type sequencer alias sound'),
nil, 0,
Handle);
MCISendString('
play sound notify',
nil, 0,
Handle);
end;