Windows 8 Embedded Standard中的内置扬声器提示音 [英] Internal Speaker Beep in Windows 8 Embedded Standard

查看:134
本文介绍了Windows 8 Embedded Standard中的内置扬声器提示音的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个运行32位版本的Windows Embedded 8 Standard的工业面板.需要使用内置扬声器发出哔声.无法连接外部扬声器.

I've got an industrial panel which running a 32-bit version of Windows Embedded 8 Standard. It is required to use the internal speaker to make beep sounds. Connecting external speakers is not an option.

以前,这是基于XP的Windows Embedded Standard并使用Console.Beep in C#将使用内部扬声器.但是,在Windows 8 Embedded Standard中,尽管没有连接,但它似乎改用了外部扬声器.

Previously this was running XP based Windows Embedded Standard and using Console.Beep in C# will use the internal speaker. However in Windows 8 Embedded Standard this seems to use the external speakers instead, despite not being connected up.

内部扬声器仍可运行-触摸屏驱动程序(eGalaxTouch)在点击屏幕时仍使用内部扬声器,但是我无法在自己的应用程序中复制它.

The internal speaker is still operational - the touchscreen driver (eGalaxTouch) still uses the internal speaker when tapping the screen, however I cannot replicate this in my own application.

我已经在C#应用程序中尝试了以下操作,但没有效果;

I've tried the following from a C# application with no effect;

Console.Beep()
MessageBeep() (user32.dll)
Beep() (kernel32.dll)
SystemSounds.Beep.Play()

我知道从64位Windows 7起,这是不可能的,但是我在这里使用的是32位操作系统,它仍然可以在触摸屏上使用吗?

I understand this is not possible from Windows 7 64-bit onwards, but I'm using 32-bit OS here and it still works with the touchscreen?

尽管使用C#/.NET解决方案是理想的,但我愿意使用其他解决方案(C/C ++/其他).

While a solution in C#/.NET would be ideal, I'd be up for other solutions (C/C++/whatever).

推荐答案

通常在发布问题后不久,我就会找到答案...

Typically shortly after posting the question, I find an answer...

基本上,使用Windows(XP)嵌入式标准中的'Beep.sys'文件代替Windows 8 Embedded版本,可以使Console.Beep正常工作.

Basically, using the 'Beep.sys' file from the Windows (XP) Embedded Standard in place of the Windows 8 Embedded version allows Console.Beep to work as expected.

harrymc对类似问题 https://superuser.com/a/230167/83606 的回答.请注意,Windows 8(嵌入式)的设备管理器中没有哔哔"设备,但其他过程类似.

harrymc's answer to a similar question https://superuser.com/a/230167/83606 below. Note that there is no 'Beep' device in the device manager in Windows 8 (Embedded), but the procedure is otherwise similar.

来自

默认蜂鸣声由 司机下 c:\windows\system32\drivers\beep.sys. 也许如果您使用 从XP/Vista的驱动程序,它将增加 音量.

The default beep is controlled by a driver under, c:\windows\system32\drivers\beep.sys. Maybe if you switched it out with a driver from XP/Vista it would increase the volume.

要查看此驱动程序,您必须打开 设备管理器,然后单击查看> 显示隐藏的设备.然后在 您会看到的非即插即用驱动程序 嘟."这是运行的驱动程序 你的哔哔声.右键单击它 选择属性并转到驱动程序 标签,然后单击驱动程序详细信息… 这显示了文件版本 好像已经改变了 Windows7.因此,将其替换为 较旧的版本,看看会发生什么.

To see this driver you have to open device manager then click on View > Show hidden devices. Then under Non-Plug and Play Drivers you’ll see "Beep." This is the driver that runs your beep. Right click on it then choose properties and go to the driver tab, then click on Driver Details… This shows the file version which looks like it’s been change with Windows 7. So replace it with an older version and see what happens.

要遵循的步骤:

  1. 从UBCD4WIN光盘(如果没有SATA硬盘,则从BartPE引导) 驱动器)
  2. 获得"C:\ Windows \ System32 \ Drivers \ Beep.sys"的所有权 归档并提供给本地 管理员"组完全控制" 权限.
  3. 将"Beep.sys"重命名为"Beep.old"(以防万一)
  4. 将XP计算机中的"Beep.sys"复制到此位置.
  1. Boot from an UBCD4WIN disc (or BartPE if you don’t have an SATA hard drive)
  2. Take ownership of the "C:\Windows\System32\Drivers\Beep.sys" file and give the local "Administrators" Group "Full Control" permissions.
  3. Rename "Beep.sys" to "Beep.old" (just in case)
  4. Copy "Beep.sys" from an XP machine to this location.

这篇关于Windows 8 Embedded Standard中的内置扬声器提示音的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆