我正在运行的项目使用CodeJock - ToolKitPro(MFC)来提供用户界面,并使用其他库在某些窗口中进行一些非常密集的渲染。
我们使用PVRVFrame库(OpenGL)进行渲染。
当我点击第一个OpenGL函数调用时 - 碰巧是eglGetDisplay
,但是来自这些库的任何函数调用似乎都会导致同样的错误 - 我收到以下错误消息:
运行时检查失败#0 - 未正确保存ESP的值 跨函数调用。这通常是调用a的结果 用一个带有函数指针的调用约定声明的函数 用不同的调用约定声明。
我已经读过,这是一个问题,其中函数声明了某个调用约定(在本例中为__stdcall)但是使用不同的约定调用 - 但是我不确定这是怎么可能的。
答案 0 :(得分:2)
对不起,这很令人尴尬,但几天后我把头靠在墙上解决了。
基本上我链接到了错误的libEGL.dll和libGLESv2.dll。
我的项目设置是在项目的本地库目录中查找,但我的系统目录中有这些库的旧版本:C:\ Windows \ SysWOW64 \
Depends.exe告诉我要查看C:\ Windows和C:\ Windows \ system32但是我猜我有一些路径设置来查看SysWOW64文件夹,所以我也暂时离开了。
感谢Captain Oblivious,感谢您的关心和帮助。