单击一次部署 - 如何发布具有多个VS项目的应用程序?

时间:2017-05-25 03:56:33

标签: c# .net wpf clickonce

我正在构建一个复杂的WPF应用程序。我有多个visual studio解决方案。每个解决方案都有一个项目由于代码保护的原因,我不得不将项目放在单独的解决方案中。

  1. ComponentMain解决方案(WPF应用程序)
  2. ComponentA解决方案(类库)
  3. ComponentB解决方案(类库)
  4. 组件A& B参考主要解决方案的组装。主要解决方案是加载组件A和组件的组件。 B在运行时使用反射。

    当我构建每个解决方案时,将触发Xcopy post build事件并将所有dll复制到名为GlobalOutput的文件夹中,我可以通过运行MainSolution.exe来运行应用程序。

    现在我想使用ClickOnce发布应用程序。正如我之前提到的,有多个项目,并且使用反射加载了Dll。

    据我所知,由于上述原因,我无法使用点击一次发布向导。可能是我错了。

    如何使用Click一次发布我的应用程序。 当我在GlobalOutput目录中拥有所有dll时,有没有办法直接从那里创建clickkonce部署?

1 个答案:

答案 0 :(得分:0)

您可以尝试指定Click Once发布的文件。

对你而言,它将是:

  • 选择其中一个解决方案/项目作为发布项目来配置Click Once。您需要将其他项目/解决方案中的dll标记为先决条件。
    1. 在“解决方案资源管理器”中选择项目后,在“项目”菜单上,单击“属性”。
    2. 单击“发布”选项卡。
    3. 单击“应用程序文件”按钮以打开“应用程序文件”对话框。
    4. 在“应用程序文件”对话框中,选择要标记为先决条件的应用程序程序集(.dll文件)。请注意,您的应用程序必须具有对应用程序程序集的引用,才能使其显示在列表中。
    5. 在“发布状态”字段中,从下拉列表中选择“先决条件”。

要使其他解决方案/项目中的文件出现在步骤3的“应用程序文件”对话框中,您可以引用输出dll,也可以将它们添加为解决方案文件,并将构建操作设置为内容。

有关详细信息:Specify Which Files Are Published by ClickOnce