Odpowiedzi:
W .Net 2.0 można użyć Console.Beep ().
// Default beep
Console.Beep();
Możesz także określić częstotliwość i długość sygnału dźwiękowego w milisekundach.
// Beep at 5000 Hz for 1 second
Console.Beep(5000, 1000);
Więcej informacji można znaleźć pod adresem http://msdn.microsoft.com/en-us/library/8hftfeyw%28v=vs.110%29.aspx
Beep()
częstotliwości przez zewnętrzne głośniki. Jednak +1 dla części wewnętrznej, nigdy nie zdawałem sobie z tego sprawy.
Możesz także skorzystać ze stosunkowo nieużywanych:
System.Media.SystemSounds.Beep.Play();
System.Media.SystemSounds.Asterisk.Play();
System.Media.SystemSounds.Exclamation.Play();
System.Media.SystemSounds.Question.Play();
System.Media.SystemSounds.Hand.Play();
Dokumentacja tych dźwięków jest dostępna pod adresem http://msdn.microsoft.com/en-us/library/system.media.systemsounds(v=vs.110).aspx
Rozwiązaniem byłoby,
Console.Beep
Spróbuj tego
Console.WriteLine("\a")
Potwierdzono, że Windows 7 i nowsze wersje (co najmniej 64-bitowe lub obie) nie używają głośnika systemowego i zamiast tego kierują połączenie do domyślnego urządzenia dźwiękowego.
Tak więc użycie system.beep()
w win7 / 8/10 nie będzie generować dźwięku przy użyciu wewnętrznego głośnika systemowego. Zamiast tego usłyszysz sygnał dźwiękowy z głośników zewnętrznych, jeśli są dostępne.
Właśnie natknąłem się na to pytanie, szukając dla siebie rozwiązania. Możesz rozważyć wywołanie funkcji systemowego sygnału dźwiękowego, uruchamiając coś z 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
}
To jest to samo, co w przypadku uruchomienia programu PowerShell:
[console]::beep(1000, 1600)
[console]::beep(2000, 400)