Lua 'sauber' einbinden (DLL Injection)
Hallo,
folgendes Szenario: Ich injiziere meine eigene DLL in einen anderen Prozess und stelle einige Lua-Befehle bereit. Nun ist es so, dass ich die lua.dll immer nachladen muss, ebenfalls in den Prozess. Ich möchte die DLL gerne so in mein Projekt einbinden das ich bestenfalls manuell keine externen Bibliotheken nachladen muss. Daher würde die Möglichkeit ausscheiden die DLL einfach als Ressource hinzuzufügen, darum das die DLL mit im Ordner liegt geht es indirekt zwar auch, aber ich möchte komplett vermeiden das die Lua Api ihre eigene DLL im Prozess hat, eben damit es ein wenig sauberer aussieht. In C++ ist es einfach möglich. In Delphi über Umwege mithilfe von .obj Dateien wohl auch, gibt es da im Zusammenhang mit Lua vorgefertigte oder evtl. Erfahrungen? Ansonsten könnte ich mir vorstellen die Lua DLL manuell zu 'wrappen', der Speicher für die DLL wird von mir selber allokiert und der entsprechende Code hineingeschrieben. Der Code der Lua DLL liegt dann direkt in meiner DLL, entweder als Ressource, als Array oder was es da sonst noch so gibt. Gibt es dazu sonst noch Vorschläge? Was haltet ihr von meiner Idee mit dem Wrapper? ;) Gruß |
AW: Lua 'sauber' einbinden (DLL Injection)
Aber Lua muss es sein? Denn es gibt mit z.B. DWScript eine sehr schöne Pascal Script Implementierung, die nicht nur schneller ist als jede Lua Implementierung, die ich bisher gesehen habe, sondern auch direkt einkompiliert wird ohne externe DLLs.
|
AW: Lua 'sauber' einbinden (DLL Injection)
Da es eh ein privates Projekt ist und es sonst keinen interessiert, nein es muss kein Lua sein ;)
Wie sich nach einigen Stunden herausgestellt hat ist Lua statisch einzubinden (c .obj) ein ziemlich großer Aufwand. DWScript muss ich mir jetzt mal genauer ansehen, das kannte ich noch nicht, danke. |
AW: Lua 'sauber' einbinden (DLL Injection)
|
AW: Lua 'sauber' einbinden (DLL Injection)
Hi,
auch dir danke für die Antwort, zur Zeit schwanke ich zwischen dem PaxCompiler (habe ihn in der Vergangenheit bereits verwendet um msfastcall Funktionen leichter aufrufen zu können und sehr gute Erfahrung gemacht) und DWScript. DWScript wird soweit ich gesehen habe nur noch sehr notdürftig aktualisiert. Mich würde dennoch interessieren ob es bereits jemanden gelungen ist Lua in Delphi statisch zu linken. Einen großen Teil der msvcrt Symbole aufzulösen ist kein Problem, bei dem Rest wird es schwieriger. |
AW: Lua 'sauber' einbinden (DLL Injection)
Zitat:
|
AW: Lua 'sauber' einbinden (DLL Injection)
Zitat:
|
AW: Lua 'sauber' einbinden (DLL Injection)
Zitat:
Zitat:
|
AW: Lua 'sauber' einbinden (DLL Injection)
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz