Anmerkung: Also ich denke andersherum geht es nicht, da Du beim Engine-SDK für deine kompilierte EXE eine eigene acknex.dll generieren musst - die ist dann an deine EXE gebunden. Ich weiß nicht wie man das lösen sollte, da die java.exe sehr wahrscheinlich selber auch nur die VM über die jvm.dll instanziiert und den Java bytecode deiner JAR dahin schickt.

So wie ich das jetzt gelöst habe ist es wie folgt: Du schreibst eine minimale Lite-C Anwendung ("helloJava.c"), in der Du mein Standard-Acknex-Plugin lädst ("jAck.dll"), das einerseits die installierte JVM instanziiert und andererseits eine .jar namens "acknex.jar" lädt, die im work_dir liegt. Die JAR ist aus einem handelsüblichen Eclipse-Projekt exportiert. Im Idealfall kompilierst du ein einziges Mal Deine Lite-C Anwendung, damit dann eine auf dich lizensierte acknex.dll erzeugt wird. Um den aktuellen Java-Code dann auszuführen, musst Du dann eben aus Eclipse herausexportieren, das geht ja in zwei Klicks.

Das Plugin würde dann, so wie ich mir das dann denke bestimmte Events an die JAR absetzen (wie level_load, main(), oder wait(1) oder so). Das würde fürs Erste reichen, damit man damit arbeiten kann. Eventuell noch ne Swing-Komponente, die dann den engine-frame auf ein Panel rendert, dann kann man GUI-Anwendungen bauen, die dann das Engine-Bild darstellen oder so. Alles Weitere müsste man dann mal ausprobieren...

[EDIT] Eventuell müsste man dann noch nen Schutzmechanismus einbauen, der deine kompilierte Lite-C EXE mit der JAR verzahnt, damit niemand einfach deine EXE und die acknex.dll nimmt und selber ne JAR "dazudichtet", um dann kostenfrei deine Engineversion zu verwenden smile

Last edited by HeelX; 12/09/12 22:16.