Вниз
Скачать: CL | DM;

Проигрывание звука из RES.   Найти похожие ветки 

 
TuZ ©   (2003-06-05 13:21) [0]

Здраствуйте, уважаемые!
Помогите, пожайлуста, с одной проблемкой... Надо проиграть звук из RES-файла (т.е. из EXE). Нашел как это сделать... Прописал код, а звука нет... Пробовал проигрывать системные звуки (выход из виндовоза и т.п.) - без проблем...
Не понимаю в чем дело...
Вот код: (взят из FAQ)


Uses ... , MMSystem;

{$R MyWave.RES}
procedure PlayMyWave;
var hResource : THandle;
pData : Pointer;
begin
hResource := LoadResource(hInstance, FindResource(hInstance, "MyWave",RT_RCDATA));
try
pData := LockResource(hResource);
if pData=nil then raise exception.create("Cann""t find res!");
PlaySound("MyWave,0,SND_MEMORY");
finally
( hResource)
Здраствуйте, уважаемые!
Помогите, пожайлуста, с одной проблемкой... Надо проиграть звук из RES-файла (т.е. из EXE). Нашел как это сделать... Прописал код, а звука нет... Пробовал проигрывать системные звуки (выход из виндовоза и т.п.) - без проблем...
Не понимаю в чем дело...
Вот код: (взят из FAQ)


Uses ... , MMSystem;

{$R MyWave.RES}
procedure PlayMyWave;
var hResource : THandle;
pData : Pointer;
begin
hResource := LoadResource(hInstance, FindResource(hInstance, "MyWave",RT_RCDATA));
try
pData := LockResource(hResource);
if pData=nil then raise exception.create("Cann""t find res!");
PlaySound("MyWave,0,SND_MEMORY");
finally
FreeResource(hResource);
end;
end;


 
VMcL ©   (2003-06-05 19:36) [1]

>TuZ © (05.06.03 13:21)

GetLastError


 
VMcL ©   (2003-06-05 19:37) [2]

>TuZ © (05.06.03 13:21)

SND_MEMORY?


 
TuZ ©   (2003-06-05 23:58) [3]


> >TuZ © (05.06.03 13:21)
>
> SND_MEMORY?

Да, в описании функции PlaySound именно этот параметр позволяет проигрывать загруженный в память звуковой файл...
У меня подозрение, что в моем случае либо некоректно загружаю ресурс, либо что-то пропускаю... Но пока еще не нашел решения...


 
TuZ ©   (2003-06-06 14:00) [4]

УРА! Нашел решение... Все очень просто... Нужно изменить строку
PlaySound("MyWave,0,SND_MEMORY");
на

PlaySound(pData,0,SND_MEMORY");

Спасибо VMcL.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
3-3735
kaif
2003-09-10 22:19
2003.10.02
Как лучше заканчивать транзакцию на чтение?


3-3746
Вован
2003-09-11 20:02
2003.10.02
Редактирую в гриде ячейку нажимаю Enter и все украинскии


3-3723
SkullNet
2003-09-12 18:13
2003.10.02
ClientDataSet


9-3693
Nuke
2003-03-20 06:00
2003.10.02
ПРОГРАМЕРЫ СОЕДЕНЯЙТЕСЬ !!!


3-3737
Radionov Alexey
2003-09-12 08:41
2003.10.02
---|Ветка была без названия|---




   Наверх