С Новым годом! Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/50: Рейтинг темы: голосов - 50, средняя оценка - 4.50
 Аватар для popelyuk
8 / 8 / 2
Регистрация: 04.12.2012
Сообщений: 130

Как заставить пищать системный динамик?

07.02.2013, 03:30. Показов 10051. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Именно тот который пищит при загрузке компа, а то
C++
1
2
3
4
BOOL WINAPI Beep(
  _In_  DWORD dwFreq,
  _In_  DWORD dwDuration
);
это не то, оно в обычный динамик пищит, а не туда куда я хочу. Можно ли вообще это как-либо сделать? Может быть как-то на асемблере или это только под DOS можна?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.02.2013, 03:30
Ответы с готовыми решениями:

Как заставить PC Speaker пищать?
Как вывести хоть какой нибудь звук? Хотя бы разок пикнуть?

Как заставить работать системный динамик?
Доброго времени суток! Решил собрать одно забавное устройство. Для этого понадобится решить такую задачу как: генерация звука под linux...

Как заставить спикер пищать независя от винды?
Люди, кто поможет - не могу найти исходник на asm'e чтобы заставить пищать динамик на нужной частоте, помогите!

12
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
07.02.2013, 04:06
Нет, оно пищит именно туда, куда тебе надо, в системный динамик.
0
 Аватар для popelyuk
8 / 8 / 2
Регистрация: 04.12.2012
Сообщений: 130
07.02.2013, 04:09  [ТС]
Цитата Сообщение от Digit@ll Посмотреть сообщение
Нет, оно пищит именно туда, куда тебе надо, в системный динамик.
у меня на win 7 пищит в динамики я проверял !!
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
07.02.2013, 11:02

Не по теме:

Помнится, я баловался подобным на Delphi 5. В один "прекрасный" момент отправил один байт не в тот порт (перепутал-то всего один циферку!)... Через полсекунды после запуска программы увидел загрузочный экран компьютера. Насколько я тогда понял, я просто нафиг вышиб процессор из защищенного режима. Жаль, что такой фокус на Windows 2000 и выше уже не прокатывал.


А, если по теме, то судя по описанию функции, она пищит именно системным динамиком (т.н. спикером). И по частотному диапазону все сходится: ниже 30 Гц он никогда не пищал, а выше 25 кГц его уже не слышно.
0
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
07.02.2013, 11:12
Для Windows 7 Beep был переписан. В MSDN говорится об этом.
0
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
07.02.2013, 11:13
Цитата Сообщение от GrayWolf Посмотреть сообщение
А, если по теме, то судя по описанию функции, она пищит именно системным динамиком (т.н. спикером).
...
In Windows 7, Beep was rewritten to pass the beep to the default sound device for the session. This is normally the sound card, except when run under Terminal Services, in which case the beep is rendered on the client.
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
07.02.2013, 11:50
Somebody, боюсь в таком ракурсе, ОС версией выше Windows 2000 вообще не позволит лезть на такой уровень, где возможно пискнуть спикером
Примерно так делал я тогда (нашел здесь):
Кликните здесь для просмотра всего текста
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
; Запрограммируем канал таймера 2 ( порт 42h ) на частоту
; 100 ( 1193000/11930 ) Гц
                mov     al,0B6h
                out     43h,al
                mov     ax,11930
                out     42h,al
                mov     al,ah
                out     42h,al
; Включем динамик :
                in      AL,61h
                or      AL,3
                out     61h,AL

Но, повторюсь, это было под Win9x, под более новыми ОС все по другому
1
 Аватар для popelyuk
8 / 8 / 2
Регистрация: 04.12.2012
Сообщений: 130
07.02.2013, 16:23  [ТС]
Нашёл печальную статейку в которой говорят что больше не пищать beep-у в виндовсах системным динамиком, т.к. это не эффективно, устарело и бла-бла-бла... всё в том же духе.
0
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
07.02.2013, 18:58
Есть еще спецсимвол "Звонок" на крайняк: cout << "\7", но опять же для терминала.
0
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
07.02.2013, 19:18
Цитата Сообщение от Digit@ll Посмотреть сообщение
Есть еще спецсимвол "Звонок" на крайняк: cout << "\7", но опять же для терминала.
Ну так он работает через тот же Beep, а в Win7 сменили всю эту систему по полной программе. Так что если только драйвер для этой цели искать/писать.
0
 Аватар для popelyuk
8 / 8 / 2
Регистрация: 04.12.2012
Сообщений: 130
07.02.2013, 19:19  [ТС]
Если ты о cmd, то он тоже юзает winapi так что то что нельзя в винде, нельзя и в любой программе которая работает под виндой соответсвенно.
0
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
07.02.2013, 22:06
Цитата Сообщение от Somebody Посмотреть сообщение
Ну так он работает через тот же Beep
Нет, в консоле это реализовано через WriteFile и далее через внутренности ntdll.dll.

popelyuk, а системный динамик на материнке хоть присутствует?
0
 Аватар для popelyuk
8 / 8 / 2
Регистрация: 04.12.2012
Сообщений: 130
07.02.2013, 22:12  [ТС]
Цитата Сообщение от Digit@ll Посмотреть сообщение
popelyuk, а системный динамик на материнке хоть присутствует?
ну да я же писал:
тот который пищит при загрузке компа
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.02.2013, 22:12
Помогаю со студенческими работами здесь

Как заставить работать РС динамик из VB
Как ?

Как заставить динамик в устройстве работать?
Есть источник питания и динамик. Разумеется если их соеденить никакого звука нету. Как можно заставить играть динамик? Поможет ли...

Как проверить работает ли системный динамик на ноутбуке
в студии вставляю код, но не чего не слышно #include &lt;windows.h&gt; int main() { Beep(247, 500); Beep(417, 500); ...

ATMega16. ASM. Как заставить динамик издавать звук на частоте 444 Гц?
Привет всем! Имеется такая схема (нарисовал в протеусе) и к ней 3 задачи: - удалено - 1) При кратковременном нажатии SB3 и при...

Системный блок начинает пищать при загрузки ОС windows server 2003
Перемещено из раздела Windows Системный блок начинает пищать при загрузки ОС windows server 2003. Начинает пищать при &quot;Применении...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru