DLL 调用错误 -The value of ESP was not properly saved across a function call.

c/c++/vc++ 专栏收录该内容
36 篇文章 0 订阅
  DLL 调用错误 -The value of ESP was not properly saved across a function call.

在调用DLL中的函数有时候会出现如下对话框的错误:

Microsoft Visual C++ Debug Library:

Debug Error:
Program: ...
Module:
File: i386/chkesp.c
Line: 42

The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.

(Press Retry to Debug the Application)

其解决方法之一是:

在函数调用前加入 WINAPI

 

例如:

typedef BOOL (WINAPI *LoadSDK)();
typedef INT  (WINAPI *BarcodeAnalyzeImage)(LPCTSTR lpszImagePath, long pVal);
typedef INT  (WINAPI *BarcodeResult)(INT nItem, LPSTR lpszBuffer, int nBufferLen);
typedef void (WINAPI *FreeSDK)();

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值