6

当我尝试Console.Beep()在 Win Vista(64 位)上运行时,它不起作用。音箱本身没问题,电脑启动时会发出哔哔声。有什么建议吗?谢谢!

4

4 回答 4

10

是64位的Vista吗?

Console.Beep 调用64 位 Vista 不支持的 API 函数Beep 。

Quote: Windows Vista x64 和 Windows XP 64 位版:不支持此功能。

如果可以通过扬声器而不是直接从主板发出哔哔声,则可以使用MessageBeep代替。请参阅此处了解如何从 C# 调用它。

于 2010-09-02T20:06:11.607 回答
2

Vista/XP x64 不支持 Beep 方法。我想你确实有 64 位操作系统?

于 2010-09-02T20:05:35.997 回答
2

正如其他人发布的那样,PC 扬声器 Beep 在 64x 的 windows vista 或 XP 中不受支持,而在 windows 7 中则完全不支持。这是 Microsoft 的一篇博客文章,解释了原因

http://blogs.msdn.com/b/larryosterman/archive/2010/01/04/what-s-up-with-the-beep-driver-in-windows-7.aspx

于 2010-09-02T20:17:09.440 回答
1

正如其他人所建议的那样,正如文档Console.Beep()所述,它不适用于 64 位窗口。相反,您可以使用以下发出哔声的语句(但不能通过 Beep API):

// beep
System.Media.SystemSounds.Beep.Play();

最初在 MSDN Connect 上找到的解决方法。

于 2010-09-02T20:15:17.383 回答