Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
 Аватар для Quntum
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 6

PlaySound зависание прерывания

21.09.2013, 17:34. Показов 1778. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем использую код

для воспроизведения
PlaySound(m_strSound, NULL, SND_ASYNC|SND_LOOP|SND_FILENAME);

для прерывания
PlaySound(NULL, 0, 0);

все работает но после приблизительно тысячного или больше раза использования кода PlaySound(NULL, 0, 0) программой функция перестает нормально прерывать - звуковой файл прерывается но как бы зависает прерывание - появляется рипение, и это продолжается даже если выключить программу, помогает только изменение уровня громкости у Windows.
Бывает работает нормально, бывает глючит. Ситуация повторяется на разных компьютерах. Используется Windows 7, 8
Впечатление будто драйвер где то что то записывает в реестр... или хз.
Кстати потом начал использовать sndPlaySound, поработало нормально но после некого периода ситуация повторяется
Кто что подскажет ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.09.2013, 17:34
Ответы с готовыми решениями:

[Вопрос] Перехват прерывания прямым доступом к вектору прерывания
Всех приветствую! В данный момент разбираюсь с обработкой аппаратного прерывания (прерывание таймера 08h и 1Ch, -//- клавиатуры 09h). ...

Вычислить адрес вектора прерывания по номеру прерывания.
17. По заданному номеру прерывания (13 h) вычислите логические адреса хранения исходных адресов обработчиков прерывания в таблице векторов....

Вызов прерывания в обработке прерывания
В программе,нажатие кнопки вызывает прерывание,в котором оно обрабатывается.Попутно в обработке этого прерывания запускается таймер по...

4
43 / 40 / 2
Регистрация: 21.09.2009
Сообщений: 145
21.09.2013, 17:58
Попробуйте PlaySound(NULL, NULL, SND_ASYNC); и еще такой вопрос проигрывание происходит в потоке?
1
 Аватар для Quntum
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 6
21.09.2013, 18:22  [ТС]
Да, в отдельном потоке, который завершается только когда завершается программа.
0
567 / 198 / 70
Регистрация: 25.05.2012
Сообщений: 816
21.09.2013, 18:27
Цитата Сообщение от Quntum Посмотреть сообщение
Да, в отдельном потоке, который завершается только когда завершается программа.
То есть у вас создается огромное количество потоков?
0
 Аватар для Quntum
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 6
21.09.2013, 19:38  [ТС]
Нет, поток один - который воспроизводит звук + некоторая логика, у него приходят разные сообщения и в зависимости от сообщение воспроизводим разные звуки, либо просто выключаем.

C++
1
2
3
4
5
6
switch (m_nPlaySound)
    {
               case 2:PlaySound(m_strSoundA, NULL, SND_ASYNC|SND_LOOP|SND_FILENAME);break;
           case 1:PlaySound(m_strSoundB, NULL, SND_ASYNC|SND_LOOP|SND_FILENAME);break;
           default: PlaySound(NULL, 0, 0);break;
    }
Добавлено через 34 минуты
Цитата Сообщение от fridi Посмотреть сообщение
Попробуйте PlaySound(NULL, NULL, SND_ASYNC);
PlaySound(NULL, NULL, SND_ASYNC) - не помогло

Добавлено через 28 минут
Вообщем сделал так
C++
1
PlaySound(m_strCloseSound, NULL, SND_ASYNC|SND_FILENAME);
В m_strCloseSound не существующий файл
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.09.2013, 19:38
Помогаю со студенческими работами здесь

playsound
я воспроивожу звук с помощью playsound вот таким образом PlaySoundA("C:\\Users\\Dimon\\Desktop\\cavalry_charge_lrg.WAV", NULL,...

PlaySound
Всем день добрый. Не могу разобраться вот с чем: При использовании функции PlaySound, во время воспроизведения ресурса,...

PlaySound
Всем привет. Есть совершенно обычный, стандартный код: #include <windows.h> LRESULT CALLBACK WndProc(HWND, UINT, WPARAM,...

playsound
суть в том что куда бы я ни добавлял функцию playsound - окно не создается. музыка играет - а окна нет. так вот вопрос: Куда её надо...

Звук в С++ PlaySound
Не робит #include "stdafx.h" #include <SFML/Graphics.hpp> #include <SFML/Audio.hpp> #include <windows.h> #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru