19 lines
534 B
C
19 lines
534 B
C
|
|
#pragma once
|
|||
|
|
#include <dlfcn.h>
|
|||
|
|
|
|||
|
|
typedef struct lua_State lua_State;
|
|||
|
|
typedef void (*dp2_game_script_t)(void(*ufptr)(lua_State* L, void*), void* udptr);
|
|||
|
|
|
|||
|
|
// 进入dp的锁, 触发回调, 同时获得lua指针
|
|||
|
|
static int dp2_game_script(void(*ufptr)(lua_State* L, void*), void* udptr) {
|
|||
|
|
void* fn = dlsym(RTLD_DEFAULT, "__dp2_game_script");
|
|||
|
|
if (!fn) {
|
|||
|
|
return 1;
|
|||
|
|
}
|
|||
|
|
dp2_game_script_t func = (dp2_game_script_t)fn;
|
|||
|
|
printf("\n函数\n");
|
|||
|
|
func(ufptr, udptr);
|
|||
|
|
printf("\n调用成功\n");
|
|||
|
|
return 0;
|
|||
|
|
}
|