Итак, сначала я загружаю DLL, которая мне нужна
local ffi = require("ffi")
local theDLL = ffi.load("thisDLL")
в ffi cdef у меня есть эта структура
ffi.cdef [[
typedef struct {
/*
* begin_proj callback
*/
bool (__cdecl *begin_proj)(char *proj);
/*
* save_proj_state
*/
bool (__cdecl *save_proj_state)(unsigned char **buffer, int *len);
} StructCallbacks;
У меня также есть эта функция в cdef
__declspec(dllexport) int __cdecl start_session(StructCallbacks *cb);
Теперь я хотел бы вызвать эту функцию
print(theDLL.start_session(myCallbacks))
вопрос в том, как я могу передать структуры, которые нужны функции (как сделать myCallbacks структурой обратных вызовов для функций Lua)?