C - DLL需要__stdcall并导入__cdecl lib

时间:2012-07-28 23:20:58

标签: c vb.net dll portaudio stdcall

我正在编译需要使用portaudio的DLL。它为套接字使用各种各样的Windows库,但是链接器不能识别portaudio库。然后我记得portaudio使用__cdcel而不是__stdcall。通常我会使用__cdcel并完成它,但我正在编译的DLL需要使用__stdcall,因为我将使用它与Visual Basic。

如果这个项目对你来说听起来像是一块混乱,那就是。

2 个答案:

答案 0 :(得分:0)

愚蠢的我!我所要做的就是使用__cdcel并将导出的函数声明为__stdcall!

答案 1 :(得分:0)

我认为你需要使用__cdecl,因为portaudio会调用你的一些函数吗?然后创建一个声明为__cdecl的内部函数,将此函数传递给portaudio,并提供一个调用内部函数的导出函数(声明为__stdcall)。

但我有点猜测你要做什么,你应该提供更多信息。