extern "C" _declspec(dllexport) _stdcall void func()解决思路
extern "C" __declspec(dllexport) __stdcall void func()
1、extern "C" __declspec(dllexport) __stdcall void Func()
2、extern "C" __declspec(dllexport) void Func()
这两个有什么区别?
c++ 写得 dll 在 delphi 中用 stdcall 调用,第一个失败,第二个成功
为什么?
------解决方案--------------------
__stdcall是一种调用约定具体可以参看MSDN,他规定了参数压栈方式等等,
至于不加,那要看你工程编译器默认什么调用约定,也可能是__stdcall也就是等价
------解决方案--------------------
_stdcall又把你的函数名改了。。。。
用def文件吧
------解决方案--------------------
第一个是_stdcall调用约定;
第二个是c调用约定
------解决方案--------------------
你的 _stdcall 再次 让函数名变乱了
_cdecl 却不会
1、extern "C" __declspec(dllexport) __stdcall void Func()
2、extern "C" __declspec(dllexport) void Func()
这两个有什么区别?
c++ 写得 dll 在 delphi 中用 stdcall 调用,第一个失败,第二个成功
为什么?
------解决方案--------------------
__stdcall是一种调用约定具体可以参看MSDN,他规定了参数压栈方式等等,
至于不加,那要看你工程编译器默认什么调用约定,也可能是__stdcall也就是等价
------解决方案--------------------
_stdcall又把你的函数名改了。。。。
用def文件吧
------解决方案--------------------
第一个是_stdcall调用约定;
第二个是c调用约定
------解决方案--------------------
你的 _stdcall 再次 让函数名变乱了
_cdecl 却不会