Главная страница
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.039 c
14-4110
SergP
2003-09-13 12:44
2003.10.02
Чем NTFS лучше FAT32?


4-4161
SergeySEM
2003-07-29 12:58
2003.10.02
Всем профи про EM_EXLIMITTEXT


3-3767
denis24
2003-09-10 19:46
2003.10.02
adoquery.open


14-4103
r0n1n
2003-09-12 13:03
2003.10.02
Обновление


3-3714
saperxl
2003-09-12 00:53
2003.10.02
Настройка InterBase