Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];

Вниз

Midi в ресурсах   Найти похожие ветки 

 
Zja   (2001-12-26 01:13) [0]

Как запихнуть midi-файл в ресурс и ( главное!!! ) как его потом проиграть оттуда?


 
ZEE   (2001-12-26 13:29) [1]

Засунуть просто: создаешь текстовый файл mymidi.rc в нем пишешь строку "midimusic RCDATA music.mid", потом компилишь его с помощью BRCC32.EXE и в результате получается ресурсный файл mymidi.res, который надо подключить к своей проге.
А вот с воспроизведение сложнее, могу подсказать разве что такой вариант из ресурсов файл можно сохранять куда-нибудь на диск - воспроизводить его, а потом удалять. Но надеюсь есть способ и по-проще...


 
copyr25   (2002-01-22 07:35) [2]

//NN.RC:
//MIDRES RCDATA NAME.MID
...
{$R *.DFM}
{$R NN.RES}
...

//загружаем файл из ресурса
ZMID:=FindResource(HInstance,"MIDRES",RT_RCDATA);
IF MIDHandle<>0 then begin
MIDHandle:=LoadResource(HInstance,ZMID);
CopyMemory(@bufer,Pointer(MIDHandle),SizeofResource(HInstance,ZMID));

//Создаем временный файл file.mid
AssignFile(TempFile,"~temp.mid");
REWRITE(TempFile,1);
BlockWrite(TempFile,Bufer[0],SizeofResource(HInstance,ZMID));
CloseFile(TempFile);

//Проигрываем
MediaPlayer1.FileName:="~temp.mid";
MediaPlayer1.Open;
MediaPlayer1.Notify:=True;
MediaPlayer1.Play;
end;

//Удаляем файл
procedure TForm1.FormDestroy(Sender: TObject);
begin
DeleteFile("~temp.mid");
end;


 
Evgeny   (2002-01-22 07:47) [3]

Видел программу, которая делает это без создания временного файла (это точно). Вот как она (или он программист) это делает?



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.005 c
4-67060
michael_B
2002-01-11 18:31
2002.03.21
как проиграть *.wav без использования компонентов(MediaPlayer).


6-66944
netter
2002-01-07 13:29
2002.03.21
Workgroup обычно


4-67049
valery_f
2002-01-21 12:36
2002.03.21
Multilanguage, Unicode...


14-66987
Фэ
2002-02-07 22:49
2002.03.21
О


1-66838
alex125
2002-03-06 18:15
2002.03.21
ошибка при вызове popupmenu





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский