Events - Verständnisproblem
-
Hi,
ich hab da nen Verständnisproblem. Ich habe eine Interfacekarte für FlexRay. Bei dieser kann ich mit einer Funktion einen Eventhandle erstellen. Dieses Event signalisiert jeweils den Start eines FlexRay Zyklus.
Wie kann ich diese Information verarbeiten und bei dem Event jeweils die gesendeten Daten abrufen?Danke für eure Zeit!
-
Das geht wohl sinnvoll nur innerhalb eines Threads, mittels der Win-API-Funktion WaitForSingleObject(), respektive WaitForMultipleObjects.
Wie Du an die Daten kommst, kann ich Dir nicht sagen, aber das müsste der Doku zu entnehmen sein.
-
Danke für den Anstoss. Werde mich mal da rein arbeiten.
-
Hi,
nochmal ich. Ich habe jetzt einen Thread erstellt. Aus diesem Thread heraus möchte ich ein Label in der Form ändern. Nachdem was ich bisher gelesen habe geht das mit invoke/delegate. Nur weiß ich leider nicht wie ich diese einbauen muss. Kann mir da jemand helfen, ich steh gerade extrem auf dem Schlauch.
Danke!
Mein Code ist folgender:DWORD WINAPI MyThreadSagWasAndauernd(LPVOID parameter) { int i=0; while(true) { //Label1->Caption=i; i++; Sleep(1000); } } //--------------------------------------------------------------------------- void __fastcall TForm2::ButtonSetConfigClick(TObject *Sender) { DWORD dwThreadId; CreateThread(NULL, 0, MyThreadSagWasAndauernd, NULL, 0, &dwThreadId); }
-
Warum so kompliziert? Schau Dir die Klasse TThread an. Zum Aktualisieren von Elementen in Hauptthread kann dann TThread::Synchronize() verwendet werden.