| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Не воспроизводится WAVE из ресурсов, когда сразу.. |
| Автор: navodri 15.4.2010, 19:56 | ||
Столкнулся со странной проблемой. Не воспроизводится WAVE из ресурсов, когда сразу за процедурой воспроизведения идет функция закрытия формы. Подскажите почему и как можно решить эту проблему?
|
| Автор: former 15.4.2010, 21:05 |
| navodri, надо дождаться, пока воспроизведение закончится. |
| Автор: navodri 15.4.2010, 21:33 |
| понятно. а как это сделать? Добавлено через 5 минут и 57 секунд Решение оказалось простым: procedure PlayWaveFromResource(ResName, SectionName: String); var FindHandle, ResHandle: THandle; ResPtr: Pointer; begin FindHandle := FindResource(HInstance, PChar(ResName), PChar(SectionName)); if FindHandle <> 0 then begin ResHandle := LoadResource(HInstance, FindHandle); if ResHandle <> 0 then begin ResPtr := LockResource(ResHandle); if ResPtr <> nil then sndPlaySound(PChar(ResPtr), SND_SYNC or SND_MEMORY); UnlockResource(ResHandle); end; FreeResource(FindHandle); end; end; |