首页 > 编程语言 > 详细

把luasocket集成到c++中

时间:2017-01-16 18:31:15      阅读:300      评论:0      收藏:0      [点我收藏+]

建一个项目pro_test,创建一个运行目录test;

把luasocket/src文件夹中的*.lua拷贝到test/src文件夹中;

把socket.dll,mime.dll,lua5.1.dll拷贝到test文件夹中;

把socket.lua改为socket_wrap.lua,因为socket.lua和socket.dll重名了;

 

main.cpp:

#include <stdio.h>

extern "C" 
{
    #include "luasocket.h"
    #include "lua.h"
    #include "lualib.h"
    #include "lauxlib.h"
    #include "luaconf.h"
};

int main(int narg, char* args[])
{
    lua_State* L = luaL_newstate();
    luaopen_base(L);
    luaL_openlibs(L);

    luaopen_socket_core(L);

    int ret = luaL_dofile(L, args[1]);
    if(ret != 0)
    {
        printf("%s", lua_tostring(L, -1));
    }
    return 0;
}

main.lua:

package.path = D:/xxx/test/src/?.lua;
require("socket_wrap")
local socket = require("socket")
local server = assert(socket.bind("*", 0))
local ip, port = server:getsockname()
print("server open on port " .. port)
local client = server:accept();

 

把luasocket集成到c++中

原文:http://www.cnblogs.com/afan/p/6290433.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!