【问题标题】:Outputting a project's output as embedded resource in another project in VS2013在VS2013中将项目的输出作为嵌入资源输出到另一个项目中
【发布时间】:2014-07-16 15:33:27
【问题描述】:

我正在使用带有 C# (3.5) 的 VS2013。

我的设置是一个带有 2 个项目的 .sln(都构建了一个类库):

MySolution.sln
    |-- Project A (builds A.dll)
    |-- Project B (builds B.dll)

我想在 VS2013 中构建 .sln,这样:

  1. 项目 A 构建 --> A.dll
  2. A.dll 将作为嵌入式资源添加到项目 B。
  3. 在构建项目 B 时 - 最新的 A.dll 将嵌入其中。

是否有任何简单而强大的方法可以通过 VS2013 中的配置来实现这一点? (例如:不求助于 MSBuild 或任何其他构建系统)。

【问题讨论】:

  • 为什么需要将其用作嵌入式资源?如果你从 B 引用 A,那么输出的 A.dll 会自动复制到 B.dll 或 B.exe 的输出文件夹中(不管输出的是什么)
  • 如果您愿意将类型从 A.dll 嵌入到 B.dll,那么这可能会有所帮助 - msdn.microsoft.com/en-us/library/dd409610.aspx

标签: c# visual-studio build build-process embedded-resource


【解决方案1】:

这是一个老问题,我不知道它是否适用于VS2013。

无论如何使用 VS2019 都可以通过将 dll 添加为链接来实现:

  • 在解决方案资源管理器中右键单击项目 B -> Add -> Existing Item
  • 然后选择构建好的A.dll文件。
  • 不要点击Add,而是点击底部的小矩形,然后点击Add As link
  • 在解决方案资源管理器中选择新添加的文件,然后在其属性中将 buld 操作更改为 Embedded Resource

注意:此过程有效,但它依赖于配置(发布/调试模式)。

【讨论】:

    猜你喜欢
    • 2011-03-21
    • 1970-01-01
    • 2013-07-08
    • 2010-09-20
    • 2020-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    相关资源
    最近更新 更多