Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] Запуск аудио-файлов *.mp4 с помощью ShellExecute (http://forum.oszone.net/showthread.php?t=191021)

Professor_J.C. 12-11-2010 19:41 1541178

Запуск аудио-файлов *.mp4 с помощью ShellExecute
 
Здравствуйте,
я разрабатываю программу Moskva.fm Grabber которая загружает эфиры радиостанций и формате mp4 (аудио). Одна из функций программы заключается в воспроизведении созданного файла по нажатию кнопки. Код обработчика события выглядит следующим образом:
Код:

procedure TMainForm.PlayBtnClick(Sender: TObject);
var
  PlayP: string;
begin
  PlayP:=Copy(Play, 2, Length(Play)-2); //убираем двойные кавычки вокруг пути
  ShellExecute(Handle, nil, pchar(PlayP), nil, nil, SW_RESTORE);
end;

На сколько я знаю, ShellExecute должен выполнить дефолтное действие над файлом в сопоставленной этому расширению программе, но на практике не происходит ничего.
Путь проверял неоднократно, он всегда передается корректно.
Как запустить воспроизведение mp4-файла в сопоставленном ему приложении?

Admiral 12-11-2010 21:32 1541271

Professor_J.C. зависит от системы. Желательно указать требуемое действие "open" во втором параметре ShellExecute().

Delirium 13-11-2010 00:42 1541412

Хм. А не проще взять тот же AIMP, загрузить в него путь до радиостанции и сграббить эфир? Это я к тому, что подобный функционал уже реализован в другом ПО.

Professor_J.C. 13-11-2010 07:20 1541469

Delirium, не проще, ибо такой метод позволяет сохранить только прямой эфир (он интересует меня меньше всего), да и специфика источника (минутные файлы с "нахлестом" 2 секунды) не позволят получить вменяемый результат средствами вроде AIMP.

Professor_J.C. 13-11-2010 07:45 1541474

Все-таки нашел ошибку в пути. Она была плохо различима. Теперь все работает.


Время: 17:38.

Время: 17:38.
© OSzone.net 2001-