Главная страница
    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.46 MB
Время: 0.009 c
14-12097
tics
2003-12-15 11:23
2004.01.05
Заодированный доступ к папке


14-12054
Undert
2003-12-10 12:22
2004.01.05
ColorAllocate


6-12028
senya
2003-11-05 15:00
2004.01.05
запуск html файла


3-11811
Query
2003-12-07 17:52
2004.01.05
Как в DBGride или Table сделать только одно редактируемое поле


14-12056
lak
2003-12-13 16:40
2004.01.05
оператор сотовой связи





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