Цитата:
Сообщение от v1s2222
Ты должен передать полный путь к нужному файлу а не 1 символ. Вот нужная тебе функция:
|
Большое тебе человеческое Зер Гроссе Данке Щён, мил человек - заработало, но... Своей цели я всё-таки не добился, а трабла в следующем:
Код:
procedure TForm1.PlayAllClick(Sender: TObject);
var
s, exe: string;
begin
s:=ExtractFilePath(Application.ExeName);
exe:=s + 'winamp\winamp.exe';
tmp:= artist+ ArtistBox1.Items[ArtistBox1.ItemIndex] + '\';
s:=s + tmp + 'all.m3u';
If FileExists (tmp + 'all.m3u') Then
CreateProcessSimple (exe, s)
//WinShellExecute ('', tmp + 'all.m3u')
else showmessage ('Архивариус не может открыть файл: '+tmp + 'all.m3u');
memo2.Lines.Add(s);
end;
Admin: Пользуемся тегами для оформления кода!
в CreateProcessSimple - изменения: в декларации ..., s:...и в теле:
... CreateProcess(PChar( sExecutableFilePath ), // путь к исполняемому файлу:
PChar(s), nil, nil, False,NORMAL_PRIORITY_CLASS, nil, nil,si, pi);....
к сожалению s одинаково коряво передаёт винампу путь к плэйлисту как WinExec-у и ShellExecut-у, так и в данном случае. Так что спасибо за помощь, но воз и ныне там - придётся изобретать другой лисапед.
P.S. А случаем ни у кого нет познаний пообширней вэтом направлении?