2

我正在运行的项目使用 CodeJock - ToolKitPro (MFC) 来提供用户界面,并使用其他库在某些窗口中进行一些非常密集的渲染。

我们使用 PVRVFrame 库 (OpenGL) 进行渲染。

当我点击第一个 OpenGL 函数调用时 - 它恰好是eglGetDisplay,但是来自这些库的任何函数调用似乎都会导致相同的错误 - 我收到以下错误消息:

运行时检查失败 #0 - ESP 的值未在函数调用中正确保存。这通常是调用使用一种调用约定声明的函数和使用另一种调用约定声明的函数指针的结果。

我已经读过这是一个问题,该函数是使用某种调用约定(在本例中为 __stdcall )声明的,但使用不同的约定调用 - 但是我不确定这怎么可能。

4

1 回答 1

2

好吧,对不起,这很尴尬,但几天后我把头撞到墙上解决了。

基本上我链接到了错误的 libEGL.dll 和 libGLESv2.dll。

我有我的项目设置来查看我的项目的本地库目录,但我的系统目录中有这些库的旧版本:C:\Windows\SysWOW64\

Depends.exe 告诉我在 C:\Windows 和 C:\Windows\system32 中查看,但我猜我设置了一些路径来查看 SysWOW64 文件夹,所以这也让我迷失了一段时间。

感谢 Oblivious 船长的关注和帮助。

于 2013-07-05T01:34:55.747 回答