看板 C_Sharp 關於我們 聯絡資訊
PInvokeStackImbalance was detectedMessage: 對 PInvoke 函式 'libzbar-cil!ZBar.Image::zbar_image_set_data' 的呼叫已使堆疊失去平衡。 這可能是因為 Managed PInvoke 簽章和 Unmanaged 目標簽章不相符。 請確認 PInvoke 簽章的呼叫慣例及參數與目標 Unmanaged 簽章是否相符。 後來追下去後 猜測是載入dll檔 在宣告指標長度上有相容問題? 也發現有人跟我遇到一樣的問題 下面有相關討論 http://jopsen.dk/blog/2011/03/version-0-10-of-zbar-sharp-is-out/ 想請問 ptr指標在32位元和64位元環境上 有沒有什麼相容性該注意的地方? ex.在32位元下開發編譯出dll檔 能否直接拿去給64位元的程式使用? zbar charp版 跑是可以跑 但是在debug模式下都會報錯 忽略錯誤警告訊息的話 一樣可以跑完 得到正確結果 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.248.56.181 ※ 編輯: erspicu 來自: 60.248.56.181 (01/30 18:10)
howardgod:你是用DLLImport嗎? 02/01 12:11
howardgod:你call的dll如果是用c寫的話,在dllimport那邊加上 02/01 12:12
howardgod:CallingConvention = CallingConvention.Cdecl 02/01 12:12