/*
说明:
回调用于窗体和DLL之间
窗体:
GUI DeviceEdit
DeviceEdit调用回调函数
DLL:
DLL DeviceEditDll
类文件说明:
DeviceEditDll.h导出头文件
DeviceEditDll.cpp实现DeviceEditDll.h导出头文件中的函数内容
DeviceEditDll类调用Fly_Camera类
在Fly_Camera类中返回回调
*/
//窗体DeviceEdit.cpp:
Fly_Camera *g_Fly_Camera;
void _stdcall CallBackImage(LPVOID lpParam, LPVOID lpUser)
{
DeviceEdit *pDlg = (DeviceEdit*)lpUser;
ImageInfo* Image = (ImageInfo*)lpParam;
pDlg->OnShowImage(Image);
}
rec = CAM_GetImage((LPVOID*)this, CallBackImage);
//DeviceEditDll.h
#include "Public.h"
DLL_API int CAM_GetImage(LPVOID *lpUser, CAM_CALLBACK camImage);
//DeviceEditDll.cpp
int CAM_SearchCamera()
{
g_Fly_Camera = new Fly_Camera();
return 0;
}
int CAM_GetImage(LPVOID *lpUser, CAM_CALLBACK camImage)
{
PublicPack pack;
pack.g_Imageinfo.callback = camImage;
pack.g_Imageinfo.lpc