2013-07-02 41 views
1

我正在運行的項目使用CodeJock - ToolKitPro(MFC)提供用戶界面並使用其他庫在某些窗口中執行一些非常密集的渲染。運行時檢查失敗#0 C++

我們使用PVRVFrame庫(OpenGL)進行渲染。

當我打的第一個OpenGL的函數調用 - 它正好是eglGetDisplay,但是從這些庫的任何函數調用似乎導致同樣的錯誤 - 我收到以下錯誤信息:

運行時檢查失敗#0 - 通過函數調用,ESP的值未正確保存 。這通常是因爲調用一個 函數聲明一個調用約定,函數指針 以不同的調用約定聲明。

我已閱讀,這是那裏的功能具有一定的調用約定(__stdcall在這種情況下)宣佈了,但調用不同的約定一個問題 - 但是我不知道怎麼會是可能的。

+1

很難說沒有看到一些代碼 –

+0

什麼可以告訴你,這將有助於? 我認爲這不是一個代碼問題,因爲它是一個項目設置/庫配置問題,但我很高興發佈一些代碼,如果它會幫助。 –

+1

如果你使用'GetProcAddress',那麼獲得函數指針的代碼將會很好。調用函數的代碼也很好。瞭解如何進行呼叫以及如何聲明呼叫在這種情況下會有所幫助。 –

回答

0

好吧,對不起,這很尷尬,但是我在頭幾天撞到牆上後解決了它。

基本上我是鏈接到錯誤的libEGL.dll和libGLESv2.dll。

我有我的項目設置在我的項目的本地庫目錄看,但我有老版本的庫在我的系統目錄:C:\ WINDOWS \ Syswow64資料\

了Depends.exe告訴我一下在C:\ Windows和C:\ Windows \ system32中,但我猜測我有一些路徑安裝在SysWOW64文件夾中查找,以致於在一段時間內也將我拋出。

謝謝上尉爲你的興趣和你的幫助而不知所措。

相關問題