Visual Studio C++ forms (managed) mit C++ native Arbeitsthread



  • Hallo,

    Ich habe da ein kleines Problem bei dem ich ziemlich ratlos bin.
    Ich habe eine Konsolenanwendung geschrieben, welche multithreaded ist, und
    in C++ native code geschrieben ist.
    Nun habe ich mir aber gedacht, ich möchte noch ein nettes GUI dazu haben,
    und so hab ich in Visual Studio 2005 ein neues Projekt gemacht mit windows Forms,
    und habe den code von der konsolenanwendung dazugetan. Es lässt sich auch
    kompilieren und alles, nur das Problem ist leider, das ich keine
    Ahnung habe wie ich von dem native C++ Arbeitsthread etwas in eine Textbox aus
    dem managed windows form ausgebe, oder auch sonstige Form-Elemente aus der
    Formklasse verändere.

    MFG

    Danke schön im vor raus.



  • Wenn Du mit "/clr" übersetzt, dann ist Dein "native" Thread nicht native sondern managed. Du magst zwar keine managed Syntax verwenden, aber das spielt keine Rolle...
    Deshalb brauchst Du einfach nur den Verweis auf Deine Form Deinem Thread mitteilen und dann dort via "form->BeginInvoke" oder "form->Invok" den UI-Thread aufrufen, indem Du dann die änderungen an der UI vornehmen kannst.



  • So was ähnliches habe ich mir schon gedacht.
    Nur wie würde dann dieser Verweis code-mässig aussehen ?



  • Bitte nächstes mal nicht mehr Doppelt-Posten...
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-170381.html



  • Ich habe den Beitrag hier nochmal gepostet, weil ich leider erst nachher entdeckt habe, das es ein eigenes CLI Forum gibt. Und da man Beiträge leider nicht verschieben kann...


Anmelden zum Antworten