• Hallo zusammen,

    anbei Stelle ich euch mein neues Baby vor: OverMind.au3

    da ich beruflich an einer sehr großen Anwendung arbeite, welche aus mehreren exe Dateien besteht, benötigte ich dringend eine Möglichkeit die Scripte miteinander kommunizieren zulassen. Auf der Suche nach Lösung habe ich eine Unmenge an Lösungen gefunden. Über DLL Struct, Console, NamedPipes oder SQL.

    Ich suchte explizit nach einer smarten und einfachen Lösung. Also begann ich mit DLL Struct & SharedMemory jedoch war mir das viel zu kompliziert, umständlich im jeweiligen Script umzusetzen und zudem hatte ich immer wieder unerwartete abstürze unter win8.1 64 bit.

    Also entschied ich mich etwas Eigenes zu bauen und neue Wege einzuschlagen. Auf der Suche stoß ich auf ein Interessantes Thema im AutoIt.de Forum welches sich mit UDP Verbindungen beschäftigte. Daher entschied ich mich in diese Richtung zu gehen, was sich als sehr vielversprechend erwies. Und zudem eine Kommunikation nicht nur auf Lokaler Ebene sondern im gesamten Netzwerk ermöglichte.

    Funktionen:


    EDIT:

    Bugfix Version 1.1
    (vielen Dank an Bitnugger)

    • Wurde der Befehl $OVM_Shutdown aufgerufen, wenn OverMind noch nicht gestartet wurde. So wurde OverMind gestartet und die UDP Verbindung gleich wieder getrennt.
    • #forceref implementiert, damit der Au3 Check nicht mehr meckert.

    Aktuellste Version: http://4ern.de/overmind-autoit-udf/

  • Immer gerne doch.

    Zur Info: Es wäre gut, wenn du noch was schreiben könntest, damit man beim Start Einstellungen vornehmen kann.

    Mir ist noch aufgefallen, dass eine Löschfunktion bei den Variablen ganz nützlich wäre. Und evtl wäre auch noch eine Unterscheidung zwischen Binär- und Textmodus interessant.

  • Getestet -> feine Sache, man kann super einfach Variablen und Array's an andere Scripte weitergeben.

    Frage:
    Könnte man die UDF auch zum "SQLite-Manager" erweitern?
    Client sendet Anfrage an Server -> Server kommuniziert mit SQLite -> Server gibt Ergebnis an Client zurück
    Selbst wenn mehrere User gleichzeitig Anfragen stellen, werden diese in SQLite der Reihe nach bearbeitet.
    So zumindest die Theorie :)

  • Hm das sollte eigentlich kein Problem sein. Möchtest du eher, dass Overmind die Variablen in SQL Zwischenspeichert (im Falle eines Absturzes) oder komplette SQL Befehle verarbeiten kann? Bei der ersten Variante denke ich wird das bei arrays eine komplizierte Sache ;)

    Wenn ich Zeit finde werde ich die zweite Variante mit einbauen. Muss eigentlich nur das Setup etwas erweiteren...

  • Hallo @4ern,

    die Scripts zu deiner OverMind UDF im ersten Post sind nicht (bzw. nicht mehr) komplett. Da fehlt zumindet die 'OverMind_creator.au3'.

    In meinen Archiven habe ich zwar noch eine Version davon, doch mit der aktuellen AutoIT-Version (v3.3.14.2) bekomme ich OverMind nicht ans Laufen. Bekomme von der OverMind_store.exe den Fehler: "Error: Variable used without being declared."

    Schade, denn OverMind könnte ich jetzt mehr als gut gebrauchen...