首页 > 解决方案 > Portaudio.dll 无法在 VS 中正确链接

问题描述

我在 Visual Studio 2019 上使用 C++,在尝试将我的项目链接到 PortAudio 时遇到问题。我收到错误“未找到 portaudio_x64.dll”。重新安装程序可能会解决此问题。我已经在 Properties->Configuration properties->linker->Input->Additional dependencies 中链接到 portaudio.lib。我还将 .lib 文件所在的文件夹放在 Properties->Configuration properties->Linker->General->Additional library 目录中。portaudio.h 所在文件夹的路径位于 Properties->Configuration properties->C/C++->General->Additional include 目录中。为了更好地衡量,我尝试在我的头文件选项卡中使用 portaudio.h 文件进行编译,而没有。这里有人建议我将实际的 dll 文件复制到与我的解决方案相同的文件夹中。这在我使用 Crtl+F5 运行程序时有效,但是当我构建解决方案并打开 exe 时,我得到与以前相同的错误。我真的很难看到这个问题,任何帮助都会很棒 其他包含目录其他库目录其他依赖项

标签: c++visual-studioportaudio

解决方案


EXE 使用的 DLL 需要位于与 EXE 运行的目录(您当前的工作目录)相同的目录中,或者位于系统 PATH(包括类似的位置C:\Windows\System32\)上。

这里有人建议我将实际的 dll 文件复制到与我的解决方案相同的文件夹中。这在我使用 Crtl+F5 运行程序时有效

Visual Studio 在调试期间设置的当前工作目录是您的解决方案文件夹。

但是当我构建解决方案并打开 exe 时,我得到与以前相同的错误

您在这里没有使用 Visual Studio:当前工作目录是您打开 EXE 的任何位置。如果它在资源管理器中,它可能是 EXE 所在的文件夹。如果它在 cmd.exe 中,它就是您导航到的任何地方!

理想情况下,您会将 DLL 保留在解决方案文件夹中,但将其作为依赖项或资源添加到项目中,以便在构建时将其复制到与 EXE 相同的位置。


推荐阅读