【发布时间】:2016-11-02 09:03:03
【问题描述】:
我正在尝试从 Windows 上的 DLL 触发 社交异步事件。底部有这个here的教程。
我不明白的是以下内容
加载您的扩展程序后,此回调应立即触发 并传入四个函数的指针。
我想我应该从 GML 调用函数 (RegisterCallbacks),因为回调被定义为 dllexport。
这里是回调函数
__declspec (dllexport) void RegisterCallbacks(char *arg1, char *arg2, char *arg3, char *arg4 )
{
void (*CreateAsynEventWithDSMapPtr)(int,int) = (void (*)(int,int))(arg1);
int(*CreateDsMapPtr)(int _num,...) = (int(*)(int _num,...)) (arg2);
CreateAsynEventWithDSMap = CreateAsynEventWithDSMapPtr;
CreateDsMap = CreateDsMapPtr;
bool (*DsMapAddDoublePtr)(int _index,char *_pKey,double value)= (bool(*)(int,char*,double))(arg3);
bool (*DsMapAddStringPtr)(int _index, char *_pKey, char *pVal)= (bool(*)(int,char*,char*))(arg4);
DsMapAddDouble = DsMapAddDoublePtr;
DsMapAddString = DsMapAddStringPtr;
}
但是我应该如何从 GML 传递一个指向“CreateAsynEventWithDSMap”的指针?我从哪里获得这些功能?
【问题讨论】:
标签: c++ dll game-maker gml