Datentransfare 2er Programme



  • Hallo!

    Ich habe folgendes Problem:
    Ich bin gerade dabei eine gute Reversie GUI zu erstellen, und will die GUI völlig abgetrennt von den Engines die ich nachher schreiben werde erstellen.

    Die GUI und die Engines sind alle in verschiedenen exe-Files, die ich über die stdin und stdout (stderr)-Handles miteinander kommunizieren lassen will.

    Ich hatte jetzt zwei kleine Testprogramme geschrieben, um zu verstehen, wie das funktioniert. Ich muss die Engine immer von der GUI aus mit CreateProcess starten. Das funktioniert derzeit schon. Dannach zeigten die Pointer von der STARTUPINFO structur (stdin, stdout, stderr) immer noch auf NULL, auch nach Anwendung der Funktion GetStartUpInfo.

    Muss ich irgendwo bei den fielen Strukturen die es gibt spezielle Parameter setzen? Ausserdem ist das exe-File eine Windows-Anwendung, und die Engine die die in die Tiefe rechnen soll ist eine Konsolenanwendung, die beim starten von der GUI aus aber nicht sichtbar sein soll.

    Danke!



  • Mit dem Thema kenn ich mich nicht aus, aber warum machst du das nicht über SendMessage() ??

    Klingt für mich viel einfacher...

    Muss die 2te Anwendung eine Konsolenanwendung sein? Warum nicht ne Windows-Anwendung ohne Fenster? Dann geht auch das SendMessage()!



  • Das würde natürlich gehen, aber ich muss das über stdin und stdout machen, weil ich mich auf eine spätere Schach-GUI vorbereiten will, die das UCI Protokoll unterstützen soll.
    Eine Konvention des UCI Protokolls ist es, dass die Datenübertragung über stdin und stdout geregelt wird. Alle UCI-Engines die man sich im Internet downloaden kann arbeiten über stdin und stdout.

    Aber Danke für den Hinweis.



  • Da kann ich dir dann nicht weiter helfen 😞

    Aber vielleicht jemand anders 😃


Anmelden zum Antworten