Entwickler-Ecke

Windows API - Event in extra Thread


F34r0fTh3D4rk - Mo 17.09.07 22:43
Titel: Event in extra Thread
hi,

ich nutze die Komponente jvHIDInterfaceDeviceController.
Diese hat ein OnData Event (wie es genau heißt ist momentan nicht wichtig), dieses Event
wird ausgelöst, wenn die Komponente Daten empfängt. ich weise also meine OnData Prozedur folgendermaßen zu:


Delphi-Quelltext
1:
  MyOnData := jvBla.OnData;                    


Nutze ich in meinem Programm nun sleep(), dann wird auch dieses Event nicht mehr ausgelöst, weil es sich im selben
Thread befindet.

Gibt es einen Weg, dieses Event in einen extra Thread auszulagern, damit es auch ausgelöst wird, wenn ich gerade
sleep im primären Thread verwende ?

Sollte das nicht gehen, muss ich die HID Schnittstelle manuell kapseln.

mfg


F34r0fTh3D4rk - Do 20.09.07 16:55

gibt es keinen weg ?

:(


Martok - Do 20.09.07 17:07

Wenn, dann müsstest du die komplette HID-Ansteuerung in den Thread auslagern.

Alternativ: muss es Sleep sein oder würde auch eine ProcessMessages-Schleife gehen?


F34r0fTh3D4rk - Do 20.09.07 22:02

wenn durch process messages das ondata event währendessen ausgelöst wird, wäre das ne lösung ;)


Delphi-Quelltext
1:
2:
3:
  dosomething;
  wait(1000); // hier wird das ondata event ausgelöst und ondata schreibt einen string
  showmessage(mystring); // hier wird auf den string zugegriffen


mfg


Narses - Sa 22.09.07 00:19

Moin!

Schau mal hier [http://www.delphipraxis.net/post52152.html#52152], damit solltest du weiter kommen. ;)

cu
Narses