报错位置:cpp文件
DSI_BASECOMMPORT_API BOOL _stdcall TestFunction(int &nRlt)
{
nRlt=1+6;
return TRUE;
}
DSI_BASECOMMPORT_API是个宏,查看定义,写在该cpp文件中
#define DSI_BASECOMMPORT_API extern"C" __declspec(dllexport)
但是,我发现,该cpp的头文件中也有它的定义
#ifdef DSI_BASECOMMPORT_API
#else
#define DSI_BASECOMMPORT_API extern "C" _declspec(dllimport)
#endif
仔细对比,发现两者不相同,难怪报错信息是“dll链接不一致”,一个是dllexport,一个是dllimport
删掉其中一个就好了