Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: MCISendString und Leerzeichen im Dateinamen?

  Alt 17. Feb 2008, 16:01
Hallo Elko,

MCI versteht keine langen Dateinamen - da hilft nur sowas hier:

Delphi-Quellcode:
function GetShortPathName(fn: TFileName): TFileName;
var
  buf: array [0..MAX_PATH] of Char;
begin
  SetString(Result, PChar(@buf),
    Windows.GetShortPathName(PChar(fn), @buf, MAX_PATH)
  )
end;

procedure TForm1.Button1Click(Sender: TObject);
const
  FileName = '"C:\WINDOWS\Media\Windows XP-kritischer Fehler.wav"';
begin
  label1.Caption := inttostr( MCISendString(PChar('open ' + GetShortPathName(FileName)), nil, 0, Handle));
end;
Getippt und nicht getestet.

Grüße vom marabu
  Mit Zitat antworten Zitat