我做了一个c++ dll for SDK,
定义函数:
extern "C" __declspec(dllexport) int __stdcall dr_GetFrame(int nDevNo, BYTE ** pFrame);同时为了固定函数名,我加了def文件。
用工具看到它的函数名是dr_GetFrame
我用vc load 它的lib,结果出现上面的错误

解决方案 »

  1.   

    我估计是lib中有定义是__dr_GetFrame@8 
    而我的dll是dr_GetFrame,
    我用def文件,主要是方便别的语言调用,
    而我用lib主要方便我vc的调用,现在是怎样使lib中也是dr_GetFrame呢
      

  2.   

    REMOVE the definition - extern "C"
      

  3.   

    一样呀,用def就是标准c,可以不用定义extern 'c' export
      

  4.   

    用这个试试呢?#pragma comment(linker, "/export:dr_GetFrame=__imp__dr_GetFrame@8")或#pragma comment(linker, "/export:dr_GetFrame=__dr_GetFrame@8")可以不用DEF文件
      

  5.   

    sorry find reason: no  include lib