【问题标题】:c++\cli project dependent c++ dll not copied to c# output directoryc++\cli 项目依赖的 c++ dll 未复制到 c# 输出目录
【发布时间】:2015-02-24 16:49:57
【问题描述】:

我有 c++ 本机 dll、lib 和头文件。在我从 c++\cli 项目中引用 lib 后,它构建成功,但是由于 c++\cli 项目 - 只是一个包装器,我在 c# 项目中引用它并且构建后在 c# 项目输出目录中没有出现本机 dll。我该如何解决?我不想使用构建事件手动复制 dll。

【问题讨论】:

  • downvote 以及 cmets 对我来说会更有用
  • 我没有投反对票,但我想你没有搜索很多...将本机 dll 作为“内容”构建操作添加到 C# 项目,以及“复制到输出目录”设置为真。
  • @LucasTrzesniewski 使用“总是复制”,以及使用构建事件只有在我自己的项目中使用包装器时才有效。如果我需要根据包装器将这个库提供给某人,他们必须知道将一些 dll 添加到“内容”或更改构建操作。因此,这个想法对我来说似乎没有吸引力。
  • 无论如何你都必须记录你的依赖(加上你对 C++ 运行时可再发行组件的依赖),所以我认为这应该不是问题。

标签: c# .net visual-c++ dll c++-cli


【解决方案1】:

因此,我只找到了两种可能的解决方案:

  • 包装库中的构建后事件,将本机 dll 复制到所有需要它的 c# 项目
  • 直接在 c# 项目中添加原生 dll 并将构建操作设置为“复制到输出目录”(根据 Lucas 响应)

【讨论】:

猜你喜欢
  • 2013-07-25
  • 2010-10-30
  • 2022-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-19
  • 2013-09-18
  • 2018-11-02
相关资源
最近更新 更多