概述
之前用Qt+mingw写了个DLL,最近有需求matlab想调用这个DLL。于是就想用Qt+MSVC重新编译一下。原因吗,当然是Matlab2009版不支持使用Mingw来编译mex文件,导致不能调用mingw编译出来的DLL。
用MSVC编译之后,出现了以下错误
“error C2059: syntax error : ‘;’”
跳转过去发现错误代码如下:
int _stdcall (*dllfunc)(HANDLE, LPVOID, DWORD,DWORD*, OVERLAPPED*);
dllfunc = (int(MY_STDCALL *)(HANDLE, LPVOID, DWORD,DWORD*, OVERLAPPED*))GetProcAddress(m_hLibrary, "SI_Read");
status = dllfunc(Handle, Buffer, NumBytesToRead, NumBytesReturned, o);
把_stdcall去掉就没有错误了。
但是原始DLL中SI_Read定义是带有_stdcall的,所以有点担心
最后
以上就是搞怪发卡为你收集整理的error C2059: syntax error的全部内容,希望文章能够帮你解决error C2059: syntax error所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复