Главная страница
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.48 MB
Время: 0.013 c
4-4169
Nicky
2003-07-30 18:25
2003.10.02
как сделать, чтоб showmessage не прятался под другими окнами


1-3895
Vogus
2003-09-18 10:57
2003.10.02
Помогите написать наследника класса


1-3860
dream
2003-09-19 09:22
2003.10.02
Cheskbox в listview ! как сделать чтобы можно было выбрать


3-3796
Шурик Ш
2003-09-11 10:44
2003.10.02
Восстановление DBF-ника по индексу.


6-4027
IBSN
2003-08-01 22:19
2003.10.02
Просмотр запросов