Главная страница
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.054 c
4-4168
Delphi5.01
2003-07-31 05:42
2003.10.02
Fomra na chistom API


9-3694
Trix
2002-12-07 21:06
2003.10.02
Японский Кроссворд


14-4069
Skywalker
2003-09-15 10:56
2003.10.02
Outlook


11-3810
access_violation
2003-01-21 10:20
2003.10.02
взаимодействие нескольких форм из DLL


1-3887
komissar
2003-09-18 15:11
2003.10.02
DesignIDE