2. API-Windows
В простейшем случае приложение должно выдавать звуковые сигналы или
проигрывать небольшие звуковые сообщения; для этих целей можно
воспользоваться API-Windows функциями MessageBeep и sndPlаySound.
Первая из упомянутых функций имеет прототип
void
MessageBeep(UINT uAlert);
При установленном драйвере звукового адаптера проигрывается звуковой
фрагмент, указанный передаваемым в качестве функции кодом; при отсутствии
драйвера выдается лишь короткий ‘бип’ из встроенного динамика. Числовой
параметр определяется значениями строк ключа
HKEY_CURRENT_USERAppEventsSchemesAppsDefault системного
реестра, связь событий с нужными звуками производится с помощью
приложения Control Panel.
3.
4. Функции MessageBeep и sndPlaySound
Функция MessageBeep пытается проиграть звуковой фрагмент в асинхронном (фоновом) режиме; в случае невозможности этого управление возвращается только после окончания
проигрывания.
Произвольный звуковой файл проигрывается функцией sndPlaySound, находящейся в библиотеке mmsystem.dll
BOOL
sndPlaySound(LPSTR lpszSoundFile,
UINT wFlags);
Через первый параметр функции передается ссылка на ресурс, содержащего звуковой фрагмент (имя WAV-файла, идентификатор ресурса приложения или вышеописанную текстовую строку);
параметр wFlag определяет способ проигрывания звукового фрагмента (нижеприведенные значения можно комбинировать при помощи операции ИЛИ).
Во всех случаях (кроме использования флага SND_NOSTOP) функция sndPlaySound возвращает TRUE, если в данный момент проигрывание выполняется и FALSE в противоположном
случае. При использовании функций MessageBeep и sndPlaySound WAV-файл должен полностью помещаться в физическую память.