2008-11-26 41 views

回答

161

.NET 2.0中,你可以使用Console.Beep()。

// Default beep 
Console.Beep(); 

您還可以指定蜂鳴的頻率和長度(以毫秒爲單位)。

// Beep at 5000 Hz for 1 second 
Console.Beep(5000, 1000); 

欲瞭解更多信息,請參閱http://msdn.microsoft.com/en-us/library/8hftfeyw%28v=vs.110%29.aspx

+1

享受全新的徽章。 ;) – 2008-11-26 15:51:07

+11

我剛剛在Win 7 x64 RC上進行了測試,雖然內部揚聲器沒有發出嗶聲,但是當我將它們插入和打開時,通過揚聲器發出蜂鳴聲。我想這只是內部(主板)揚聲器不會發出嗶嗶聲。感謝info @Lck。 – 2009-10-13 14:38:35

+1

對於x64提示+1,在Vista x64上也不起作用! – 2010-02-08 08:28:04

20

Console.Beep

10

試試這個

Console.WriteLine("\a")

4

據證實,Win7和較新版本(至少64位或兩者兼有)不會使用系統揚聲器,而是將呼叫路由到默認聲音設備。

因此,在win7/8/10中使用system.beep()不會使用內部系統揚聲器發出聲音。但是,如果可以使用外置揚聲器,您會聽到一聲嘟嘟聲。

1

我在爲自己尋找解決方案時遇到了這個問題。 你可能會考慮通過運行一些kernel32的東西來調用系統蜂鳴聲功能。

using System.Runtime.InteropServices; 
     [DllImport("kernel32.dll")] 
     public static extern bool Beep(int freq, int duration); 

     public static void TestBeeps() 
     { 
      Beep(1000, 1600); //low frequency, longer sound 
      Beep(2000, 400); //high frequency, short sound 
     } 

這是一樣的,你可以運行PowerShell的:

[console]::beep(1000, 1600) 
[console]::beep(2000, 400) 
相關問題