Wie Signalton über PC-speaker?
Möchte ich ein beep-sound über PC-Lautsprecher in C#. Wenn mit dem folgenden code:
[DllImport("kernel32.dll", EntryPoint = "Beep", SetLastError = true,
ExactSpelling = true)]
public static extern bool Beep(uint frequency, uint duration);
static void Main()
{
while (true)
{
Beep(1000, 500);
Thread.Sleep(2000);
}
}
statt der Piepton über den PC-Lautsprecher, es ist einfach, Ausgänge ein Ton einer bestimmten Frequenz und Dauer der Standard-sound-Gerät (auch als headset zum Beispiel). Das gleiche passiert, wenn Console.Beep()
.
Warum?
Hinweise:
-
Den PC-Lautsprecher auf. Wenn ich starte den PC, es piept.
-
Betriebssystem Windows 8.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie eine 32-bit-Windows-Rechnern herumliegen? Versuchen
Console.Beep();
einer von denen, die den PC-Lautsprecher ertönt.Auf 64-bit-Windows (XP, Vista, 7 oder 8) die Treiber nicht vorhanden, so wird es aus dem Lautsprecher an der Maschine statt.
Auch, korrigiert mich wenn ich falsch bin, aber ich wage eine Vermutung, dass der Signalton hören Sie, wenn Ihr PC schaltet von Ihr BIOS, bevor Sie Windows 8 Treffer.
Von Windows 7 ab, Sie können nicht mehr so leicht machen sound über die internen Lautsprecher.
[...]
Siehe hier für details:
http://blogs.msdn.com/b/larryosterman/archive/2010/01/04/what-s-up-with-the-beep-driver-in-windows-7.aspx
Können Sie
SystemSounds.Beep
zum Beispiel:SystemSounds.Beep.Play();
Siehe auch: SystemSounds.Piep-Eigenschaft