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

Вниз

Добавить ресурс   Найти похожие ветки 

 
AleKo   (2003-12-19 07:24) [0]

Добрый день господа!
Подскажите, как мне грамотно добавить ресурс в файл ресурсов (*.res) миди файл так чтобы я смог воспроизвести его при помощи процедуры PlaySound().


 
AleKo   (2003-12-19 08:50) [1]

?


 
Anatoly Podgoretsky   (2003-12-19 08:57) [2]

Добавлять надо в *.rc
Воспроизвести данной функцией все равно не получится.


 
alex_***   (2003-12-19 09:03) [3]

делаещшь .rc файл, прописываешь ресурс ID_RES RCDATA xxx.mid
и при нужде вытаскиваешь оттуда


 
AleKo   (2003-12-19 09:43) [4]

Anatoly Podgoretsky у меня литература в которой сказано что это свмый лучший способ и пример
PlaySound("Имя Рес",0,SND_RESOURCE);


 
Serge   (2003-12-19 09:49) [5]


В файл MyWave.rc пишешь:


MyWave RCDATA LOADONCALL MyWave.wav
brcc32.exe MyWave.rc, получаешь MyWave.res.
В своей программе пишешь:

--------------------------------------------------------------------------------
{$R MyWave.res}

Все!

Предупреждая следующий твой вопрос "а как прочитать wave-файл из исполняемого файла?"

--------------------------------------------------------------------------------
procedure RetrieveMyWave;
var

hResource: THandle;
pData: Pointer;
begin

hResource:=LoadResource( hInstance, FindResource(hInstance, "MyWave", RT_RCDA
TA));

try
pData := LockResource(hResource);

if pData = nil then
raise Exception.Create("Cannot read MyWave");

// Здесь pData указывает на MyWave
// Теперь можно, например, проиграть его (Win32):
PlaySound("MyWave", 0, SND_MEMORY);
finally
FreeResource(hResource);
end;
end;



 
alex_***   (2003-12-19 09:51) [6]

ну раз написано, так и делай. Остается только поместить в ресурс нормально


 
AleKo   (2003-12-19 09:53) [7]

Спасибо! Буду пробовать.


 
Anatoly Podgoretsky   (2003-12-19 09:53) [8]

AleKo (19.12.03 09:43) [4]
Ссылочку на такую кривую литературу, но я думаю она не причем, проблема не в литературе.


 
alex_***   (2003-12-19 10:02) [9]

а почему кривая литература? В Win SDK тоже сказано что можно напрямую из ресурсов тащить при флаге SND_RESOURCE. Правда лично я не пробовал PlaySound midi проигрывать, но может оно и все равно. А отдельно ресурс можно не делать. ПРи добавлении в проект .rc файла ресурс компилится в res вместе с проектом и включается в итоговый бинарный файл.


 
AleKo   (2003-12-19 10:11) [10]

Delphi Советы программистов под редакцией В.Озерова. стр 375


 
AleKo   (2003-12-19 10:40) [11]

Ошибочка у Serge в примере
вместо
PlaySound("MyWave", 0, SND_MEMORY);
нужно указать
PlaySound(pData,0,SND_MEMORY);


 
alex_***   (2003-12-19 10:55) [12]

нет. по имени к ресурсу обращение идет. но это мелочи, главное направление определили.



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

Форум: "Основная";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.01 c
8-11998
exobyte
2003-09-04 12:30
2004.01.05
Зрительные образы


14-12126
McSimm
2003-12-12 15:22
2004.01.05
Задачка про двухходовые шахматы.


1-11878
еще чайник
2003-12-18 15:10
2004.01.05
Отчет FastReport


4-12191
Yuri Btr
2003-11-04 16:00
2004.01.05
Способен ли сервис получать messages ?


1-11944
real_dimedrol
2003-12-20 03:57
2004.01.05
URL парсер для ленивых





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский