使用luainterface组件,可以在c#里嵌入lua脚本,使用非常容易。
1 在程序来加入luainterface引用。
2 执行lua脚本
var lua = new Lua();
lua.DoString("a = 25");
var d = (double)(lua["a"]);
MessageBox.Show(d.ToString());
3 lua可以使用c#写的函数
先定义要公布给lua的函数,然后调用lua的RegisterFunction来注册这个函数,这样就可以在lua脚本里调用这个函数了。
// 定义函数doMsg
public class LuaIface {
public static void doMsg() {
MessageBox.Show("hello from lua");
}
}
//注册
lua.RegisterFunction("doMsg", null, typeof(LuaIface).GetMethod("doMsg"));
// lua脚本调用doMsg
lua.DoString("doMsg()");
ok. 真的非常简单。另外,如果下载的luainterface编译好的dll如果和.net sdk版本有冲突,可以在app.config里设置版本兼容。参考以下设置(startup 项加入下的attribute):
useLegacyV2RuntimeActivationPolicy="true"
当然最好自己直接编译luainterface源码,那样就不会有这个问题了。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。