Составители:
sageBeep() также должен задаваться параметр MB_ICONHAND. Воспроизводимый звук
определяется записью SystemHand в системном реестре.
В табл. 9.2 приведен список допустимых значений параметра функции Message-
Beep(), а также соответствующих им записей в реестре.
Таблица 9.2
Значение параметра Запись в реестре
0xFFFFFFFF Стандартный сигнал, воспроизводимый через динамик
компьютера
MB_ICONASTERISK SystemAsterisk
MB_ICONEXCLAMATION SystemExclamation
MB_ICONHAND SystemHand
MB_ICONQUESTION SystemQuestion
MB_OK SystemDefault
С помощью панели управления или редактора реестра пользователь может связать
с этими сигналами любой WAV-файл. Подобно всем остальным функциям, связанным с
воспроизведением звуков, функция MessageBeep() требует наличия драйвера соответст-
вующего устройства. Обычный динамик персонального компьютера не является адек-
ватным мультимедийным устройством.
С помощью функции sndPlaySound() можно воспроизвести любой системный звук,
зафиксированный в реестре и сконфигурированный с помощью панели управления
(кроме пяти стандартных системных звуков могут использоваться дополнительные), или
воспроизвести непосредственно WAV-файл.
BOOL sndPlaySound( LPCTSTR lpszSoundName, // файл или запись реестра
UINT uFlags ); // флаги семейства SND_
Первый параметр указывает на запись в реестре, например SystemStart или Sys-
temQuestion. Кроме того, он может содержать полный путь и имя WAV-файла. Функция
sndPlaySound() требует свободного объема памяти, достаточного для полной загрузки
всего файла звукозаписи. Она лучше всего работает со звуковыми файлами, размер ко-
торых не превышает 100 Кб.
В качестве второго параметра ожидается флаг, задающий параметры воспроизве-
дения звука. Ниже приведено несколько возможных значений этого параметра.
SND_MEMORY - Определяет первый параметр как указатель объекта, находящегося в
памяти, а не как имя файла или системный звук.
SND_SYNC - Завершает воспроизведение звука и после этого возвращает управление
программе.
SND_ASYNC - Возвращает управление программе немедленно и воспроизводит звук в
фоновом режиме.
SND_ASYNC | SND_LOOP - Возвращает управление программе немедленно и в фоно-
вом режиме воспроизводит звук до тех пор, пока программа не вызовет функцию
sndPlaySound() со значением NULL в качестве первого параметра.
SND_NODEFAULT - Запрещает воспроизведение каких-либо звуков, если невозможно
найти заданный файл. Обычно функция sndPlaySound() в таких случаях воспроизводит
стандартный системный звук SystemDefault.
Для воспроизведения звуков, скомпилированных в виде ресурсов, лучше всего
подходит функция PlaySound().
BOOL PlaySound( LPCTSTR lpszSoundName, // имя файла или ресурса
HANDLE hModule, // источник звукового ресурса
228
sageBeep() также должен задаваться параметр MB_ICONHAND. Воспроизводимый звук определяется записью SystemHand в системном реестре. В табл. 9.2 приведен список допустимых значений параметра функции Message- Beep(), а также соответствующих им записей в реестре. Таблица 9.2 Значение параметра Запись в реестре 0xFFFFFFFF Стандартный сигнал, воспроизводимый через динамик компьютера MB_ICONASTERISK SystemAsterisk MB_ICONEXCLAMATION SystemExclamation MB_ICONHAND SystemHand MB_ICONQUESTION SystemQuestion MB_OK SystemDefault С помощью панели управления или редактора реестра пользователь может связать с этими сигналами любой WAV-файл. Подобно всем остальным функциям, связанным с воспроизведением звуков, функция MessageBeep() требует наличия драйвера соответст- вующего устройства. Обычный динамик персонального компьютера не является адек- ватным мультимедийным устройством. С помощью функции sndPlaySound() можно воспроизвести любой системный звук, зафиксированный в реестре и сконфигурированный с помощью панели управления (кроме пяти стандартных системных звуков могут использоваться дополнительные), или воспроизвести непосредственно WAV-файл. BOOL sndPlaySound( LPCTSTR lpszSoundName, // файл или запись реестра UINT uFlags ); // флаги семейства SND_ Первый параметр указывает на запись в реестре, например SystemStart или Sys- temQuestion. Кроме того, он может содержать полный путь и имя WAV-файла. Функция sndPlaySound() требует свободного объема памяти, достаточного для полной загрузки всего файла звукозаписи. Она лучше всего работает со звуковыми файлами, размер ко- торых не превышает 100 Кб. В качестве второго параметра ожидается флаг, задающий параметры воспроизве- дения звука. Ниже приведено несколько возможных значений этого параметра. SND_MEMORY - Определяет первый параметр как указатель объекта, находящегося в памяти, а не как имя файла или системный звук. SND_SYNC - Завершает воспроизведение звука и после этого возвращает управление программе. SND_ASYNC - Возвращает управление программе немедленно и воспроизводит звук в фоновом режиме. SND_ASYNC | SND_LOOP - Возвращает управление программе немедленно и в фоно- вом режиме воспроизводит звук до тех пор, пока программа не вызовет функцию sndPlaySound() со значением NULL в качестве первого параметра. SND_NODEFAULT - Запрещает воспроизведение каких-либо звуков, если невозможно найти заданный файл. Обычно функция sndPlaySound() в таких случаях воспроизводит стандартный системный звук SystemDefault. Для воспроизведения звуков, скомпилированных в виде ресурсов, лучше всего подходит функция PlaySound(). BOOL PlaySound( LPCTSTR lpszSoundName, // имя файла или ресурса HANDLE hModule, // источник звукового ресурса 228
Страницы
- « первая
- ‹ предыдущая
- …
- 224
- 225
- 226
- 227
- 228
- …
- следующая ›
- последняя »