Yanıtlar:
.Net 2.0'da Console.Beep () kullanabilirsiniz.
// Default beep
Console.Beep();
Ayrıca bip sesinin sıklığını ve uzunluğunu milisaniye cinsinden belirleyebilirsiniz.
// Beep at 5000 Hz for 1 second
Console.Beep(5000, 1000);
Daha fazla bilgi için http://msdn.microsoft.com/en-us/library/8hftfeyw%28v=vs.110%29.aspx adresine bakın.
Beep()
harici hoparlörlerden tam bir frekans aralığını duyabiliyorum . Ancak iç kısım için +1, bunu hiç fark etmedim.
Ayrıca nispeten kullanılmayanları da kullanabilirsiniz:
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();
Bu sesler için belgeler http://msdn.microsoft.com/en-us/library/system.media.systemsounds(v=vs.110).aspx adresinde mevcuttur.
Çözüm,
Console.Beep
Bunu dene
Console.WriteLine("\a")
Windows 7 ve daha yeni sürümlerin (en az 64 bit veya her ikisi) sistem hoparlörünü kullanmadığı ve bunun yerine aramayı varsayılan ses cihazına yönlendirdikleri onaylanmıştır .
Bu nedenle, system.beep()
win7 / 8 / 10'da kullanmak dahili sistem hoparlörü kullanarak ses üretmeyecektir. Bunun yerine, varsa harici hoparlörlerden bir bip sesi alırsınız.
Kendime çözüm ararken bu soruyla karşılaştım. Bazı kernel32 öğelerini çalıştırarak sistem bip işlevini çağırmayı düşünebilirsiniz.
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
}
Bu, powershell'i çalıştırdığınızla aynıdır:
[console]::beep(1000, 1600)
[console]::beep(2000, 400)