while schleife



  • Hallo, habe leider ein Problem mit meinen Programmierkentnissen in MFC Visual C++. Ich habe eine while schleife laufen, in der ständig von der seriellen schnittstelle Daten abgefragt werden! Leider kann ich die Schleife nicht durch einfache Eingabe der escape-Taste oder einer beliebigen Taste verlassen. Das Programm rennt die ganze Zeit durch die schleife und lässt mir keine Möglichkeit die Ergebnisse im Dialog anzuzeigen, bzw. die Schleife abzubrechen! Weiß jemand wie man das am einfachsten bewerkstelligen kann, das bei Tastendruck die Schleife beendet?



  • Das Problem ist wohl, dass die Nachrichtenwarteschlange umgangen wird.
    Die Nachricht, dass die Taste gedrückt wurde, wird also in der while Schleife nicht abgefragt.

    Du könntest vermutlich mit GetAsyncKeyState die Tastatur "pollen".
    Ist allerdings nicht wirklich sauber die Lösung, da dein Programm sozusagen "blockiert".



  • Einfach mit Threads arbeiten.


Anmelden zum Antworten