Entwickler-Ecke
Windows API - Durchgaengiger Ton mit PC-Speaker unter Win2k
Maweki - Fr 22.04.05 17:43
Titel: Durchgaengiger Ton mit PC-Speaker unter Win2k
Hallo
Also, ich will wie ein kleines Keyboard programmieren, und das ganze, wegen dem unverwechselbaren Ton ueber den Speaker ausgeben (nein, nicht ueber den Lautsprecher, den echten PC-Speaker. Das Ding, was am Board haengt).
Jetzt ist es bei einem Keyboard ja so, dass ein Ton solange gehalten werden soll, bis man eine Taste loslaesst.
Das Problem ist, dass man mit dem Windows-Internen Aufruf windows.beep() Frequenz und Dauer angibt. Aber die Dauer steht ja, wenn es Echtzeit sein soll noch nicht fest...
Bei Win9x ist das kein Problem, da der assembler-Interrupt den Ton aktiviert und ein anderer ihn wieder deaktiviert. Aber bei XP meldet er mir bei der 9x-methode einen Zugriffsfehler.
Ich habe schon probiert, viele kurze toene hintereinander, aber das ist ein "Tonflackern", also man hoert die Pause zwischen den Beeps...
Gibt es noch eine andere Moeglichkeit den Speaker so zu benutzen, wie ich das moechte?
Gruesse
Maweki
uall@ogc - Fr 22.04.05 18:03
bei win9x werden die die systembefehle über die interrupts "ausgeführt"
bei 2k wird das alles übers int3 abgewickelt und bei XP über sysenter
nach kurzem debuggen hab ich gesehn das auch nur nen sysenter benutzt wird d.h. der ton wird halt so lange abgespielt wie die parameter angeben, es wird also nicht das abspielen aktiviert und deaktiviert bei bei win9x
vielleicht hilft dir das ja weiter und aknsnt ja selbst mal schaun was die parameter genau sagen
winsta._WinStationBeepOpen
Maweki - Fr 22.04.05 18:11
Ich weiss schon, was die normalen Parameter machen. Und ich weiss auch ganz genau, wo das Problem liegt (XP erlaubt keine Interrupts und eine Absolute Laenge ist nunmal nicht dynamisch)
die Frage, die sich mir stellt:
gibt es noch einen anderen Weg, den Speaker anzusprechen?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!