Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.02.2008, 19:10
bagish bagish вне форума
Прохожий
 
Регистрация: 03.05.2006
Сообщения: 6
Репутация: 10
По умолчанию Из dll в TMediaPlayer

Как создать Dll файл с ресурсами(wav и mp3), а затем по мере
надобности загружать их в TMediaPlayer моего приложения?
Спасибо.
Ответить с цитированием
  #2  
Старый 05.02.2008, 19:15
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

Вот почитай тут
__________________
Программирование - это искусство и наш смысл жизни.
Ответить с цитированием
  #3  
Старый 06.02.2008, 06:24
bagish bagish вне форума
Прохожий
 
Регистрация: 03.05.2006
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от moo2k
Вот почитай
Ну, прочитал. Не думаю, что кто-нибудь из начинающих разобрался бы там, куда Вы меня, monsieur, отфутболили.
Ну да мы псковские, переживём!
И всё-таки. Ншёл я два-три примера по созданию dll c звуковыми ресурсами ( мир не без добрых людей ), но для их выгрузки используется функция PlaySound. Мне же надо загрузить ресурс в MediaPlayer. Подскажите, как это сделать?
Ответить с цитированием
  #4  
Старый 06.02.2008, 12:54
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

Используй WMP_Music. Это ActiveX компонент Windows Media Player'a. Перед воспроизведением твоих муз. файлов, извлекай их с dll'ки во временную папку.
__________________
Программирование - это искусство и наш смысл жизни.

Последний раз редактировалось moo2k, 07.02.2008 в 14:31.
Ответить с цитированием
  #5  
Старый 07.02.2008, 09:51
bagish bagish вне форума
Прохожий
 
Регистрация: 03.05.2006
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от moo2k
Используй WMP_Music
Идею понял. Спасибо! Но как это реализовать?
Код. Умоляю!!!
Ответить с цитированием
  #6  
Старый 07.02.2008, 10:25
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

Код:
WMP_Music.URL:=<полный путь к mp3-песне>; 
WMP_Music.Controls.play;
__________________
Программирование - это искусство и наш смысл жизни.
Ответить с цитированием
  #7  
Старый 07.02.2008, 13:34
bagish bagish вне форума
Прохожий
 
Регистрация: 03.05.2006
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от moo2k
извлекай их с dll'ки во временнную папку
Ну не знаю я этих премудростей!
1. А как это делается?
Цитата:
Сообщение от moo2k
Используй WMP_Music
Среди ActiveX компонентов я нашёл только WindowsMediaPlayer. Если это тот самый компонент, то:
2. Приграть mp3 файл ведь может и стандартный MediaPlayer? Здесь какя-то фишка?

Последний раз редактировалось bagish, 07.02.2008 в 13:37.
Ответить с цитированием
  #8  
Старый 07.02.2008, 14:35
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

1) извлекай свои файлы из dll
2) проигрывай файл:
Код:
MediaPlayer1.FileName:='путь_к_песне';
MediaPlayer1.Open;
MediaPlayer1.Play;
__________________
Программирование - это искусство и наш смысл жизни.
Ответить с цитированием
  #9  
Старый 07.02.2008, 16:03
bagish bagish вне форума
Прохожий
 
Регистрация: 03.05.2006
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от moo2k
1) извлекай свои файлы из dll
Да как извлечь то???
Ответить с цитированием
  #10  
Старый 07.05.2009, 16:08
Аватар для DyaДько
DyaДько DyaДько вне форума
Прохожий
 
Регистрация: 02.05.2009
Адрес: Ижевск
Сообщения: 6
Репутация: 10
По умолчанию

Код:
function GetTempDirectory: String;
var
  tempFolder: array[0..MAX_PATH] of Char;
begin
  GetTempPath(MAX_PATH, @tempFolder);
  result := StrPas(tempFolder);
end;

procedure FormCreate(Sender: TObject);
var 
Res : TResourceStream;
begin
Res:=TResourceStream.Create(Hinstance, 'SONG1', RT_RCDATA);
Res.SavetoFile(GetTempDirectory + '\1.mp3');
Res.Free;
end;

procedure TForm1.Play(path:string);
begin
if not FileExists(path) then begin
MessageBox(Form1.Handle,'Файл для воспроизведения не найден',
'Ошибка открытия файла',MB_OK or MB_ICONEXCLAMATION)
exit;
end; 
MediaPlayer1.FileName:=path;
MediaPlayer1.Open;
MediaPlayer1.Play;
end;
Ответить с цитированием
  #11  
Старый 07.05.2009, 19:37
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

DyaДько, какая же старая эта тема. Я даже забыл ответить тому человеку. Сейчас увидел опять эту тему и стыдно стало. В то время я почти не бывал на этом форуме.
p.s. извините за оффтопик.
__________________
Программирование - это искусство и наш смысл жизни.
Ответить с цитированием
  #12  
Старый 07.05.2009, 22:12
Аватар для DyaДько
DyaДько DyaДько вне форума
Прохожий
 
Регистрация: 02.05.2009
Адрес: Ижевск
Сообщения: 6
Репутация: 10
По умолчанию

ой, я на дату не посмотрел. В эту тему из гугла попал, решил ответить=)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 04:03.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter