Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Tutorials und Kurse (https://www.delphipraxis.net/36-tutorials-und-kurse/)
-   -   Delphi Lua und Delphi (Teil 1) (https://www.delphipraxis.net/76737-lua-und-delphi-teil-1-a.html)

igel457 8. Sep 2006 21:06


Lua und Delphi (Teil 1)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Lua und Delphi
Funktionen von Delphi nach Lua

Hallo,

Ich habe mal ein kleines Tutorial geschrieben, in dem es um die Verwendung von Lua mit Delphi geht.
In diesem Teil geht es darum, Lua mit Delphi zu verbinden und Delphi Funktionen aus Lua heraus aufzurufen.

[edit=JasonDX] *snip* - Link auf Wunsch des Autors entfernt, das Tutorial befindet sich nun im Anhang[/edit]

Um Rückmeldung wäre ich euch sehr verbunden, da es mein erstes Tutorial ist.

In den nächsten Teilen wird es darum gehen Lua Funktionen aus Delphi heraus aufzurufen und Objekte zwischen Lua und Delphi auszutauschen.

Viel Spaß damit wünscht euch,
Igel457

PS: Mehr Infos über Lua gibt es unter http://www.lua.org

mschaefer 8. Sep 2006 21:58

Re: Lua und Delphi (Teil 1)
 
Moin, Spätmoin,

Scriptsprachen in Delphi sind ein interessantes Thema. Dein Tutorial finde ich gut gemacht.
Kenne Lua nun überhaupt nicht. Richtig spannend finde ich wird es, wenn ich ein Memo mit dem Programm habe und dies dann ändern und laufen lassen kann. Vielleicht könntest Du ein Demoprojekt mit Source in den Anhang stellen. Ein großer Vorteil scheint hier doch zu sein, dass nicht mit ActiveX-Komponenten, sondern nur mit einer dll, die im Anwendungsverzeichnis liegt, gearbeitet wird. Und wenn man die dynamisch lädt, kann man auch noch ihre relative Lage zur Exe bestimmen.

Find ich gut! Grüße // Martin

igel457 9. Sep 2006 10:52

Re: Lua und Delphi (Teil 1)
 
Zitat:

Zitat von mschaefer
Moin, Spätmoin,

Scriptsprachen in Delphi sind ein interessantes Thema. Dein Tutorial finde ich gut gemacht.
Kenne Lua nun überhaupt nicht. Richtig spannend finde ich wird es, wenn ich ein Memo mit dem Programm habe und dies dann ändern und laufen lassen kann. Vielleicht könntest Du ein Demoprojekt mit Source in den Anhang stellen. Ein großer Vorteil scheint hier doch zu sein, dass nicht mit ActiveX-Komponenten, sondern nur mit einer dll, die im Anwendungsverzeichnis liegt, gearbeitet wird. Und wenn man die dynamisch lädt, kann man auch noch ihre relative Lage zur Exe bestimmen.

Find ich gut! Grüße // Martin

Danke für die Rückmeldung! Die Beispielprogramme werde ich noch hochladen, das ist kein Problem.
Das mit dem Memo ist vieleicht auch git für ein Beispiel mit Objekten, mal schaun ob ich das hinkriege.

Igel457

Vasco da Gama 8. Sep 2009 13:11

Re: Lua und Delphi (Teil 1)
 
Hallo Delphi Experten!
Ich weiß, dass dieses Thema 3 Jahre alt ist, habe aber trotzdem Fragen:

1.: Teil 1? Gibt es davon auch einen 2. Teil?

2.: Ich habe den ersten Teil des Tutorials ausprobiert und kam damit zu folgendem Code:
Delphi-Quellcode:
program LuaTest;

{$APPTYPE CONSOLE}

uses
  SysUtils, Lua;

var Lua_Instance:Lua_State;

begin
  Lua_Instance := Lua_Open();
  LuaOpen_Base(Lua_Instance);
  Lua_DoFile(Lua_Instance, 'helloworld.lua');
  ReadLn;
  Lua_Close(Lua_Instance);
  Lua_Instance := nil;
end.
Damit spuckt er aber nicht das gewünschte Ergebnis aus, sondern:

Zitat:

cannot read h: No such file or directory
Kennt jemand diesen 'Fehler'/ dieses Problem oder gar die Lösung?

mfG und Danke

Mithrandir 8. Sep 2009 13:25

Re: Lua und Delphi (Teil 1)
 
Ich kenn mich mit Lua nicht aus, vermute aber mal, dass

Delphi-Quellcode:
  Lua_DoFile(Lua_Instance, 'helloworld.lua');
die fehlerhafte Zeile ist. Schonmal mitm kompletten Pfad versucht?

Andreas L. 8. Sep 2009 13:26

Re: Lua und Delphi (Teil 1)
 
Vielleicht muss hier ein absoluter Pfad angegeben werden:
Delphi-Quellcode:
Lua_DoFile(Lua_Instance, 'helloworld.lua');

Vasco da Gama 8. Sep 2009 13:28

Re: Lua und Delphi (Teil 1)
 
Hi, ja hab ich grade versucht, dann bekomm ich bei
Delphi-Quellcode:
  Lua_DoFile(Lua_Instance, 'C:\Users\Florian\Documents\RAD Studio\Projekte\LuaTest\helloworld.lua');
Zitat:

cannot read C: No such file or directory
Trotzdem danke für die Antworten

Klaus01 8. Sep 2009 13:34

Re: Lua und Delphi (Teil 1)
 
.. sind (String) Konstanten in Delphi 2009 auch uniCode?
Könnte da das Problem liegen?

Grüße
Klaus

Vasco da Gama 8. Sep 2009 13:35

Re: Lua und Delphi (Teil 1)
 
Das weiß ich jetzt spontan nicht, doch diese Variable ist eine PWideChar, also kein String.

Chris.R 8. Sep 2009 13:47

Re: Lua und Delphi (Teil 1)
 
In den Deklarationen für die Dll ist bestimmt PChar als Parametertyp definiert, was vor Delphi 2009 PAnsiChar entsprochen hat, unter Delphi 2009 (und höher) aber PWideChar ist.
Einfach mal in der Unit in der die Funktion definiert ist, PChar durch PAnsiChar ersetzten.

Die Meldung "cannot read C: No such file or directory" kommt daher, da das erste Zeichen "C" ist, gefolgt von einem 0 Byte, da UTF-16. Und nach dem Nullbyte ist für die
Dll-Funktion der String zu Ende.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:59 Uhr.
Seite 1 von 2  1 2      

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