我试图将我的项目(C ++控制台应用程序)链接到外部静态库(基本上是.lib
文件和.h
头文件),在Visual Studio 2015中。
我已添加了包含.lib
的文件夹的路径(我创建的特定文件夹,位于项目的根文件夹下,仅包含.lib文件),在项目属性下,
我还将文件名添加到"链接器 - 输入 - 附加依赖项"。
作为测试,我试图指定错误的文件名 - 这导致LNK1104
错误(当指定了正确的名称时不会发生)。
出于某种原因,一旦我#include
库标题(.h
文件)进入我的main.cpp
文件,就会出现"系统错误" accures -
程序无法启动,因为您的计算机缺少external_dll.dll [..]
出于某种原因,链接器根据.dll
d标题的名称查找#include
文件 - 尽管事实上我已将项目与静态库链接( .lib
文件)。
这个.dll
文件当然不存在。
我在这里遗漏了什么吗?
答案 0 :(得分:1)
如果是这样的话: -
"由于某种原因,链接器根据#included标头的名称查找.dll文件 - 尽管事实上我已将项目与静态库(.lib文件)相关联)"
那么应该有一些方法来禁用这个功能,我的意思是在VS2015的项目设置中,一个应该能够让链接器停止查找dll文件对应的dll #include头文件。此外,还有排除字段,如果您无法执行上述操作,您可以尝试排除您遇到的dll文件,然后从那里获取。
答案 1 :(得分:0)
您的应用程序只是找不到DLL文件。最简单的解决方案是将该DLL放入包含exe文件的文件夹中。