|
Вопрос # 2 417/ вопрос открыт / |
|
Здравствуйте, эксперты!
Программа возпроизводит mp3 файлы таким образом
MediaPlayer1.FileName := ExtractFilePath(Application.ExeName)+'Melody.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play;
Как сделать так, что бы выдвало ошибку свою, есть трек (Melody.mp3) не будет найден? Спасибо!
 |
Вопрос задал: Хитманчан (статус: Посетитель)
Вопрос отправлен: 13 февраля 2009, 16:43
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Dron
Здравствуйте, Хитманчан!
Проверить существование файла функцией FileExists() и обработать результат. Например так:
if FileExists(ExtractFilePath(Application.ExeName)+'Melody.mp3') then
begin
MediaPlayer1.FileName := ExtractFilePath(Application.ExeName)+'Melody.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play
end
else
MessageDlg('Файл "'+ExtractFilePath(Application.ExeName)+'Melody.mp3'+'" не найден.',mtError,[mbOk],0);
 |
Ответ отправил: Dron (статус: Студент)
Время отправки: 13 февраля 2009, 16:46
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 3; последнее сообщение — 14 февраля 2009, 09:33; участников в обсуждении: 3.
|
Хитманчан (статус: Посетитель), 13 февраля 2009, 16:52 [#1]:
Большое спасибо!
|
|
Косолапов Дмитрий Юрьевич (статус: 8-ой класс), 14 февраля 2009, 09:15 [#2]:
По большому счету, проверка на наличие файла недостаточна - могуть быть и другие ошибки ("битый" файл, в системе не установлен кодек и т.п.)
|
|
Dron (статус: Студент), 14 февраля 2009, 09:33 [#3]:
Цитата (Косолапов Дмитрий Юрьевич):
По большому счету, проверка на наличие файла недостаточна - могуть быть и другие ошибки ("битый" файл, в системе не установлен кодек и т.п.)
Несомненно. Однако подобные вещи MediaPlayer'ом отследить сложнее - он всё-таки очень простой. Если писать серьёзный медиа-комбайн, лучше взять что-нибудь покруче.
Ну а я ответил на поставленный вопрос
С уважением.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|