EXE调用DLL中的回调函数
首先描述一下我想要的功能:在dll里创建了一个Form,放了一个ClienSocket,通过Onread事件如果接受到服务端发来的信息,则把信息交给调用此dll的exe程序去处理,想用回调函数实现,如下:
===========================================DLL=================================================
Form的CPP文件里面
typedef void(CALLBack *chbSendCmdToMain)(AnsiString asCmd);
chbSendCmdToMain SendCmdToMain;
if(SendCmdToMain)
{
SendCmdToMain(ClientSocket->Socket->ReceiveText());
}
void __stdcall huidiao(chbSendCmdToMain tempSendCmdToMain)
{
SendCmdToMain = tempSendCmdToMain;
}
void __stdcall diaoyong(AnsiString asCmd)
{
//do sth
}
Hdl = LoadLibrary(...);//...省略了
void(__stdcall huidiao)(chbSendCmdToMain )
(FARPROC &)huidiao = GetProcAddress(Hdl, "huidiao")
huidiao(diaoyong);