![]() |
![]() ![]() ![]() ![]() |
|
Включение wav-файла в exe и проигрывание этого wav-файлаDelphi , Файловая система , Ресурсы
Автор: Осипов Евгений
{ **** UBPFD *********** by delphibase.endimus.com ****
>>
Зависимости: Uses MMSystem
Автор: Осипов Евгений Анатольевич, ICQ:114205759, Бузулук
Copyright: Нашёл в интернете
Дата: 31 мая 2002 г.
***************************************************** }
// В файл MyWave.rc пишешь:
MyWave RCDATA LOADONCALL MyWave.wav
// Затем компилируешь
brcc32.exe MyWave.rc, получаешь MyWave.res.
// В своей программе пишешь:
{$R MyWave.res}
procedure RetrieveMyWave;
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('Cannot read MyWave');
// Здесь pData указывает на MyWave
// Теперь можно, например, проиграть его (Win32):
PlaySound(pData, 0, SND_MEMORY + SND_ASYNC + SND_NOSTOP);
//Для PlaySound используется модуль MMSystem}
//SND_ASYNC - при проигрывании не останавливать работу программы
//SND_NOSTOP - проиграть звук до конца
//SND_STOP - прекратить играть прежний звук и начать новый
finally
FreeResource(hResource);
end;
end;
Программа на Delphi! Код, который я предоставил, является простым примером, как встроить файл WAV в исполняемый файл и проиграть его с помощью библиотеки MMSystem. Вот разбивка каждого шага: MyWave.rc: Это ресурсный скрипт, который определяет ресурс под названием Скомпилируйте MyWave.rc: Запуск компилятора В вашем программе:
Альтернативное решение: Если вы не хотите встроить файл WAV в ваш исполняемый файл, вы можете хранить его как отдельный файл и использовать функцию Эта APPROACH более гибкая, но может требовать дополнительной обработки в случаях, когда файл не найден или не может быть проигран. В целом, этот код демонстрирует простой способ встроить и проиграть файл WAV с помощью Delphi и MMSystem. В статье описывается способ включения wav-файла в exe-файл и его проигрывания с помощью модуля MMSystem и функции PlaySound. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||