博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lua语言如何调用自己编写的C DLL -- 转
阅读量:5825 次
发布时间:2019-06-18

本文共 1566 字,大约阅读时间需要 5 分钟。

Lua语言如何调用自己编写的C DLL文件#include "lua.h"#include "lualib.h"#include "lauxlib.h"#include 
static int MyLuaDLL_HelloWorld(lua_State* L){ MessageBox(NULL,"Hello","World",MB_OK); return 0;}static int MyLuaDLL_average(lua_State *L){ int n = lua_gettop(L); double sum = 0; int i; for (i = 1; i <= n; i++) { sum += lua_tonumber(L, i); } lua_pushnumber(L, sum / n); lua_pushnumber(L, sum); return 2;}static const luaL_reg MyLuaDLLFunctions [] ={ {"HelloWorld",MyLuaDLL_HelloWorld}, {"average",MyLuaDLL_average}, {NULL, NULL}};int __cdecl __declspec(dllexport) luaopen_MyLuaDLL(lua_State* L){ luaL_openlib(L, "MyLuaDLL", MyLuaDLLFunctions, 0); return 1;} -- lua code: --local testlib = package.loadlib("Lua_Dll.dll","luaopen_MyLuaDLL"); --获取DLL中抛出函数地址print (testlib) if(testlib)then testlib(); --调用DLL中抛出函数else -- ErrorendMyLuaDLL.HelloWorld();a,b=MyLuaDLL.average(23,33,3344);print("average:",a,"sum:",b);--------------------------------------------my.c文件:#include "stdafx.h"#include
#include "my.h"static int pri(lua_State *L){ MessageBox(NULL,"Hello","this is a c program!",MB_OK); return 0;}static const struct luaL_Reg mylib[]={ {"pri",pri}, {NULL,NULL}};__declspec(dllexport) int luaopen_mylib (lua_State* L){ luaL_register(L,"mylib",mylib); return 1;}my.h文件:#include "lua.h" #include "lualib.h"#include "lauxlib.h"#pragma comment(lib,"lua5.1.lib")test.lua文件:local a=package.loadlib("my.dll","luaopen_mylib");a()mylib.pri()

  

转载地址:http://gdsdx.baihongyu.com/

你可能感兴趣的文章
BZOJ1997:[HNOI2010]PLANAR——题解
查看>>
BZOJ1014:[JSOI2008]火星人prefix——题解
查看>>
使用Unity3D引擎开发赛车游戏
查看>>
HTML5新手入门指南
查看>>
opennebula 开发记录
查看>>
ubuntu 修改hostname
查看>>
sql 内联,左联,右联,全联
查看>>
C++关于字符串的处理
查看>>
6、Web Service-拦截器
查看>>
Flask 源码流程,上下文管理
查看>>
stream classdesc serialVersionUID = -7218828885279815404, local class serialVersionUID = 1.
查看>>
ZAB与Paxos算法的联系与区别
查看>>
Breaking parallel loops in .NET C# using the Stop method z
查看>>
修改故障转移群集心跳时间
查看>>
[轉]redis;mongodb;memcache三者的性能比較
查看>>
微软职位内部推荐-Sr DEV
查看>>
让你的WPF程序在Win7下呈现Win8风格主题
查看>>
JDBC二查询(web基础学习笔记八)
查看>>
802.11 学习笔记
查看>>
Leetcode-Database-176-Second Highest Salary-Easy(转)
查看>>