You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio引用动态库遇LNK1104:无法打开MyDll.lib

Visual Studio C++动态库引用找不到.lib的解决方案

问题根源

控制台项目的链接器默认搜索路径未包含你的统一输出目录$(SolutionDir)$(Platform)\$(Configuration)\,所以即使DLL的.lib已生成在该目录,链接器也无法定位到它。

解决步骤

1. 添加链接器附加库目录

打开控制台项目属性页,依次进入链接器 > 常规,在附加库目录中填入$(SolutionDir)$(Platform)\$(Configuration)\。这会明确告诉链接器去你的统一输出目录查找库文件。

2. 确认项目依赖与编译顺序

右键控制台项目 → 选择项目依赖项,勾选MyDll。这样Visual Studio会优先编译DLL项目,保证控制台项目编译时MyDll.lib已经生成完成。

3. 利用项目引用简化配置(推荐)

既然已经添加了MyDll作为项目引用,其实可以去掉链接器 > Input中手动添加的MyDll.lib。正确配置项目引用后,VS会自动完成以下操作:

  • 将DLL的头文件目录添加到控制台项目的包含路径
  • 将DLL的输出目录添加到链接器的库搜索路径
  • 自动把MyDll.lib加入链接输入列表
  • 保证编译顺序正确

4. 清理并重新生成解决方案

执行生成 > 清理解决方案,再执行生成 > 重新生成解决方案,避免旧的缓存文件干扰编译结果。

注意事项

Debug和Release模式的配置是独立的,要确保两种模式下的附加库目录都正确配置,$(Configuration)宏会自动适配当前模式的路径。

内容的提问来源于stack exchange,提问作者user24011790

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 13:08:11