vc++如何调用C++BUIDER 写的DLL
动态和静态

解决方案 »

  1.   

    你....晕了。DLL还静态调用??
    DLL的调用用LoadLibrary()即可。
      

  2.   

    有可能格式不对的,最好有Lib文件静态调用就方便了。
      

  3.   

    现在的问题是,不管是显式调用还是隐式调用,都出现了error LNK2001: unresolved external symbol "unsigned char __stdcall TC_GetImgData_DLL(unsigned char (* const)[224],unsigned short,unsigned short)" (?TC_GetImgData_DLL@@YGEQAY0OA@EGG@Z)
    这个报错。
      

  4.   

    vc和cb的dll还是有区别的,如果cb调用vc的dll,需要使用cb的工具OFF2OMF来转换一下,现在反过来调用我还没试过。
    我见过X-Scan就是CB编写的,他的插件很多是VC编写的Dll,可反过来就不太清楚了。
    Borland和Microsoft的Dll格式还是有区别的。
      

  5.   

    C++ Builder中的函数应该声明为__stdcall,而不是__fastcall。 
    在VC++中调用的时候不能使用C++ Builder的.lib文件,应该采用动态调用http://blog.csdn.net/helenhf/archive/2007/03/16/1531002.aspx
      

  6.   

    http://topic.csdn.net/t/20020312/11/570245.html你找找资料吧。
      

  7.   

    要不就来个The value of esp was not properly saved across a function call,...............
      

  8.   

    很明显,调用规定不同,C++默认是C风格调用,而CB应使用__stdcall这样的约定,这样C中可以用__Stdcall来调用它作的DLL的申明。
      

  9.   

    bcb 是使用__stdcall 这样的约定