Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.02;
Скачать: 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 вся ветка

Текущий архив: 2003.10.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
3-3747
stud
2003-09-12 10:35
2003.10.02
по поводу диалектов.


14-4099
Anna
2003-09-09 12:27
2003.10.02
---|Ветка была без названия|---


3-3760
denis24
2003-09-11 19:29
2003.10.02
Преобразовать строку в дату


14-4072
PVOzerski
2003-09-15 12:44
2003.10.02
О спаме - с юмором и не только.


8-3998
e}{e
2003-05-22 02:25
2003.10.02
no movement