VS2012:程序无法启动,因为缺少“libvorbisfile.dll”

时间:2014-03-07 02:40:44

标签: c++ visual-studio-2012 vorbis oggvorbis

我有一个项目,我试图让它读取.OGG文件。 我已经从here下载了libogglibvorbis,编译了它们(在确定我必须先构建libogg时遇到了一些麻烦),然后得到了以下文件:

libogg.lib
libogg.dll
libvorbis.lib
libvorbis.dll
libvorbisfile.lib
libvorbisfile.dll

我将所有这些文件拖放到已添加到项目中的项目的Libraries文件夹中,并将它们包含在Linker-> Input(仅限.lib)中。

接下来,我将标题复制到项目的Includes文件夹中,该文件夹也已添加到项目中,文件包含:

ogg/ogg.h
ogg/os_types.h

vorbis/codec.h
vorbis/vorbisenc.h
vorbis/vorbisfile.h

然后我添加了一些代码,我收到错误“程序无法启动,因为计算机中缺少libvorbisfile.dll。” 而且我很确定文件IS在Library文件夹中并在属性中正确定义。

我一路走错了吗? 我怎么能弄清楚什么是错的,所以我可以解决它?

我已经尝试将.dll放在项目的文件夹和Windows / System32文件夹中,但是没有用。

1 个答案:

答案 0 :(得分:1)

库文件夹适用于.lib文件,但是它在运行时查找.dll,您的项目设置对此没有影响。 Windows在一些地方查找.dll,但让程序运行的最简单方法是将.dll放在工作目录中,这是您运行可执行文件的地方(可能与.exe目录相同)文件)。