C ++在C ++项目中使用本机dll

时间:2015-08-13 05:00:01

标签: c++

我认为这应该是直截了当的,但我遇到了一堆链接器错误,如下所示:

  

错误1错误LNK1104:无法打开文件' ... \ Debug \ Utils.lib' ... \ LINK

其中Utils是我想保留为DLL的C ++项目之一。

如果我将配置属性 - > 配置类型更改为静态库(.lib),一切都会编译并运行正常,但如果我使用.dll然后它不工作。

整个解决方案是原生C ++,主项目是win32控制台应用程序。

2 个答案:

答案 0 :(得分:0)

也许您的库(Utils.lib)未组装为DLL,并且控制台应用程序项目(使用库)中的更改将无济于事。 仔细阅读MSDN以查看DLL的创建和使用功能。

答案 1 :(得分:0)

你试图将.lib链接到另一个.lib,它并没有真正链接。相反,这指示最终链接使用两个库。

对于DLL,这不起作用,因为运行时链接程序无法链接原始.LIB。这意味着在编译DLL时必须发生链接。

因此,DLL项目需要将.LIB目录设置为正确。