如何通过 C++ 代码使主板发出哔哔声? [关闭]
Posted
技术标签:
【中文标题】如何通过 C++ 代码使主板发出哔哔声? [关闭]【英文标题】:How to make Motherboard Beep through C++ Code? [closed] 【发布时间】:2016-12-17 09:49:37 【问题描述】:如何使主板内部扬声器发出声音,例如使用 Beep 命令但指向主板扬声器。
操作系统 = Windows 7 x64
我目前知道如何向默认声音设备提供哔声,包括音调和毫秒,但这并不能回答我的问题,因为我无法将任何这些声音强制发送到主板内部扬声器。
Beep(523, 500);
我的问题主要基于 Beep 的替代方案,它可以通过主板扬声器而不是计算机声卡播放。或者一种将 Beep 命令或传入音频频率指向主板扬声器的方法。
【问题讨论】:
你不能指望我们给你代码吗? 你用谷歌搜索过吗?不清楚你在这里问什么或/和太宽泛 定义“真实答案”?您是否从任何基本代码开始? 使用 Beep(hertz, milli) 并在控制台中尝试 /a。虽然这只是按照我的预期将它定向到我的默认声音设备。 @FirstStep 老兄,什么?对于不知道该怎么做的事情,如何从基本代码开始? 【参考方案1】:这个问题后来被指定是指Win32编程环境,这个问题描述了一个Linux的解决方案。
您可以使用KIOCSOUND
ioctl 来生成音调,就像这样
ioctl(fd,KIOCSOUND,(int) tone)
The Linux Programming Interface 是一本非常棒的书,详细描述了 IOCTL 的使用,但也有描述 IOCTL 的公共资源,例如常年使用的 classic TLDP。
【讨论】:
感谢您的回复,尽管我没有为我的操作系统运行 linux,但我会保留那行代码以备日后需要它! @ITCSB 下次考虑使用[linux]
或[windows]
等标记平台敏感问题。【参考方案2】:
在 Windows 7 中,Beep 被重写以将哔声传递给会话的默认声音设备。这通常是声卡,除非在终端服务下运行,在这种情况下会在客户端上呈现哔声。 source
显然有一种可能的系统修改here。
【讨论】:
这看起来不错,但它不能满足我的需要,我正在尝试用哔声命令创建一首歌曲,然后将它交给我的朋友,他不希望他的计算机系统文件被更改任何形状或形式。以上是关于如何通过 C++ 代码使主板发出哔哔声? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章