显示调用
typedef DWORD (*FunOpen)(DWORD,DWORD,DWORD); //定义函数指针,以备调用
FunOpen open=(FunOpen)lib.resolve("VCI_OpenDevice"); //援引 VCI_OpenDevice() 函数
另外一种方
typedef DWORD(__stdcall VCI_OpenDevice)(DWORD DeviceType,DWORD DeviceInd,DWORD Reserved);
VCI_OpenDevice *pOpenDevice;
pOpenDevice = (VCI_OpenDevice *)lib.resolve("VCI_OpenDevice");
隐式调用
Pro文件增加:
LIBS +=C:/Users/Administrator/Desktop/qt/workdesign/CanTcpTest/build-CanTcpTest-Desktop_Qt_5_7_0_MinGW_32bit-Debug/debug/ControlCAN.dll
INCLUDEPATH+=C:/Users/Administrator/Desktop/qt/workdesign/CanTcpTest/CanTcpTest/head/
这种方法不太好,但是如果项目文件位置更改就编译不通过必须要改变上面的路径。可使用下面的方法
先把dll和lib以及h文件三大件儿拷贝到项目路径下
在项目上右键添加库,添加外部库 去掉为debug版本添加'd作为后缀。然后包含头文件调用函数库。