【问题标题】:Is there any way to reduce DLL clutter in my ClickOnce app?有什么方法可以减少我的 ClickOnce 应用程序中的 DLL 混乱?
【发布时间】:2011-05-01 18:56:39
【问题描述】:

我的问题是,我的 ClickOnce 应用程序所需的 DLL 使我的项目文件夹变得杂乱无章,我想将它们移动到 bin 文件夹,但不知道这样做的简单方法,仍然要分发文件。

解释一下:

我正在使用 ClickOnce 分发 C# 应用程序。它具有以下组件:

  • 一个 C# 应用程序
  • 一个 CLR DLL
  • 无数的 C++ DLL

所有这些都构建到一个整洁的小 bin 文件夹中。

现在 CLR DLL 是从 C# 项目中引用的,因此它可以正常复制和部署。

但我也想将 C++ DLL 作为 ClickOnce 项目的一部分分发,所以我做了人们说要做的事情,即将它们添加到 C# 项目中(拖放),然后在属性,将 Build Action 设置为 Content 并将 Copy to Output Directory 设置为 Copy if Newer

ClickOnce 似乎可以很好地部署这些文件。

但问题是,现在我有一堆二进制文件转储到我的 C# 项目文件夹中(并出现在 IDE 的项目根目录中),它以一种非常令人讨厌的方式将可执行文件与源文件混合在一起。

谁能告诉我一种简单的方法,将我的所有 DLL 保存在它们所属的输出文件夹中,并通过 ClickOnce 分发它们?

【问题讨论】:

    标签: c# visual-studio clickonce


    【解决方案1】:

    将 C++ DLL 移动到合理的位置,然后在将它们添加到项目时选择将它们添加为链接,而不是标准的 Add,后者将文件复制到项目文件夹。

    要做到这一点,请按以下步骤操作:

    1. 右键单击项目文件并选择添加现有文件。
    2. 导航到文件所在的位置。
    3. 单击“添加”按钮旁边的向下箭头并选择“添加为链接”

    【讨论】:

    • 哇。那是隐藏得很好。为了其他人的利益,您右键单击,添加现有项目,然后当您选择该项目时,“添加”按钮上有一个下拉菜单,可让您选择“添加为链接”。我将对此进行测试以确保它适用于 ClickOnce。
    • 是的,效果很好!现在最好找到一种方法将源文件与解决方案资源管理器中的二进制文件分开。
    • 编辑:更新了解决方案,步骤更清晰。我不确定您是否可以对解决方案资源管理器进行排序。你可以试试visual studio power tools,它有一个非常酷的解决方案导航器。
    猜你喜欢
    • 1970-01-01
    • 2022-11-22
    • 1970-01-01
    • 2012-03-20
    • 1970-01-01
    • 2020-02-15
    • 1970-01-01
    • 2018-07-19
    • 1970-01-01
    相关资源
    最近更新 更多