依赖于.dll的应用程序正确构建,然后在运行时找不到该DLL

时间:2015-02-18 21:28:36

标签: visual-studio dll

我在Visual Studio 2013中编写了一个依赖于名为WSTP32i1.dll的DLL的应用程序。 dll及其关联的.lib文件都包含在项目中,并且编译和构建时没有错误。但是,当我运行它时,我明白了:

enter image description here

将DLL的副本放在应用程序文件夹中并没有帮助。当我检查解决方案资源管理器时,DLL似乎被标记为"不参与构建,"这似乎不对,但我不知道该怎么改变它。

enter image description here

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

解决方案资源管理器树包含用于构建可执行文件的源文件(cpp,h,rc等)。 “项类型”属性定义如何处理此文件。 DLL不是有效的源文件,IDE不知道如何处理它。这就是为什么它"不参加"。

链接导入库的标准(和最简单)方法是在应用程序项目的Common Properties / References页面中添加对DLL项目的引用。默认情况下,解决方案的所有DLL和EXE文件都构建在同一个$(SolutionDir)$(Configuration)目录中,因此一切都可以使用,无需任何调整和后期构建事件。

如果您的DLL是在另一个解决方案中构建的,请确保它与EXE文件位于同一文件夹中,或者在PATH环境变量中指定DLL文件夹。