Не работет BEEP в Win7 x64

Ответить
Аватара пользователя
NORIO

Не работет BEEP в Win7 x64

Сообщение NORIO »

У меня есть таймер написанный на автоите. Когда он срабатывает проигрывается звуковой файл и одновременно пищит спикер.

Чтобы можно было услышать и в наушниках и без них.



Только что узнал что в Windows 7 x64 не поддерживается pc speaker его звук выводится на звуковуху.

А надо чтобы работал классический внешний системный динамик.





Причём надо что бы

на наушники подаются все звуки + сигнал таймера

а на пищалку только сигнал таймера



то есть как это обычно происходит в более старых системах (winXP)



Ищу решение как восстановить эту функцию или заменить чем-то.

Может возможно вывести на какой то отдельный канал звуковухи только этот сигнал?
Аватара пользователя
Creat0R

Re: Не работет BEEP в Win7 x64

Сообщение Creat0R »

Цитата NORIO:



Только что узнал что в Windows 7 x64 не поддерживается pc speaker его звук выводится на звуковуху
Не работет BEEP в Win7 x64




Так а что ожидается тогда от AutoIt? если не поддерживается, значит так задуманно, нужно обращаться к Microsoft Изображение




Цитата NORIO:



Ищу решение как восстановить эту функцию или заменить чем-то
Не работет BEEP в Win7 x64




Есть хотя одна функция для отключения динамика, возможно он просто отключён?





Код:

Код: Выделить всё

_BeepSpeakerSetState(1)
Beep(500, 300)
Func _BeepSpeakerSetState($iState=0, $iPause=500)
    Switch $iState
        Case 0
            Run(@ComSpec & ' /c net stop beep & sc config beep start= disabled', '', @SW_HIDE)
        Case Else
            Run(@ComSpec & ' /c sc config beep start= system & net start beep', '', @SW_HIDE)
    EndSwitch
    Sleep($iPause)
EndFunc
Аватара пользователя
NORIO

Re: Не работет BEEP в Win7 x64

Сообщение NORIO »

Creat0R,

Спасибо.

Я выяснил что в Windows 7 x64 переписали драйвер BEEP.sys так чтобы он никогда не выводил звук на спикер

а перенаправлял на звуковуху.

статья по этому поводу.

http://blogs.msdn.com/larryosterman/...windows-7.aspx






Там в комменте предлагали какое то решение но оно не просто не работает но и windows 7 не смогло распознать.

то есть это решение (которое там в обсуждениях) и замена драйвера как часто советую на windows 64 абсолютно не работает

я проверял.



Остаются варианты:



1 либо вывести писк на отдельный канал звуковухи например только писк на басовый канал или rear канал

(или вывести звук на отдельное звуковое устройство, tv тюнер,модем, доп звуковуха)

+

обычный общий звук вместе с писком на наушники



но пока не вижу каких либо библиотек и приспособлений, ничего похожего на официальном форуме





2 эмулировать спикер дополнительным нестандартным устройством.

то есть абсолютно любым, хоть платкой какой то припаянной к COM порту, хоть динамиком PCI модема.

или pci плата какая то диагностическая с пищалкой, да хоть какая нибудь USB приблуда, я бы купил если б знал что.



Сейчас надо найти устройство и софт промежуточный к нему (если понадобится). Причём:



a) только нужно что то что возможно будет контролировать из скрипта

b) чтобы оно не было тормозным.
Ответить

Вернуться в «AutoIt»