Wie benutze ich Events?
-
Hallo zusammen, ich verstehe diese Windows Events nicht und weiß nicht wo ich anfangen soll.
Was ist ein Event? Wie Funktioniert ein Event? Wie stelle ich fest, wenn ein Event ausgelöst wird? ...
Mein konkretes Problem:
DirectSound (Streaming)Buffer! Da will ich ein paar Stellen markieren, wenn der PlayCursor eine dieser stellen erreicht, möchte ich benachrichtigt werden. Nach der DX Docu geht das mit Events. Ich hab aber keine Ahnung von Events und in der DX Docu wird auch nicht weiter darauf eingegangen (hab zumindest noch nix gefunden).Gibt es Tut's für Events mit einfachen Beispielen?
Danke und Gruß mathi
-
schau dir mal diese funktionen im MSDN an, dass dürfte etwas licht ins dunkel bringen:
CreateEvent()
SetEvent()
ResetEvent()
OpenEvent()
WaitForSingleObject()
WaitForMultipleObjects()in den meisten fällen kann man alternativ bei diesen benachrichtigungen auch eine callback-function anstelle eines event-handlings verwenden ...
rocknix ///
-
Danke! Habs mir angesehen, sieht auf den ersten Blick gans einfach aus.
Ich konnte das leider noch nicht ausprobieren, weil ich noch ein DirectSound Problem habe:
DirectSound StreamingBuffer
Vielleicht weiß ja jemand bescheid?Wie ist das gemeint, Event (mit CreateEvent erstellt) mittels CallBack-Funktion Handeln? Wie müsste ich das anstellen?
[ Dieser Beitrag wurde am 17.01.2003 um 16:18 Uhr von mathi editiert. ]
-
Wie ist das gemeint, Event (mit CreateEvent erstellt) mittels CallBack-Funktion Handeln? Wie müsste ich das anstellen?
das hängt von der dx-implementierung ab (ist nicht so meine welt) ... aber bei vielen multimedia sachen kann man als "notify" einstellen, ob ein event gesetzt werden soll oder alternativ eine user-defined callback proc angesprungen wird ... zB bei waveIn/Out, midiIn/Out mmTimer etc.
meine vermutung war einfach, das es bei dx auch so einen mechanismus geben könnte.
rocknix ///
-
Original erstellt von RockNix:
das hängt von der dx-implementierung ab ... meine vermutung war einfach, das es bei dx auch so einen mechanismus geben könnte.Achso, danke. Ich dachte das funktioniert im allgemeinen mit Events.
Gruß mathi