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;
 | |
| }
 |