将文件添加到Click Once部署

30
我正在将一个应用程序移植到 ClickOnce 平台,这个应用程序包含一个中等大小的数据文件夹,里面有数百个文件需要在部署时一并打包。这个文件夹需要和 EXE 文件相对位置不变地被部署。我看过了一些关于如何实现这一点的建议,但并没有一个公认的方法。
如果您有任何建议,希望能与我分享。
谢谢!

andyhammar的回答是:我们需要查看在“项目”->“属性”->“发布”->“应用程序文件”下是否包含了一键式应用程序发布。 - sPS
3个回答

53

一个好的做法是:

  • 在VS中为app创建一个文件夹,例如 "datafiles"
  • 使用 添加现有项 后,在对话框中选择 作为链接添加 将所有文件添加到该文件夹中
  • 将所有文件标记为 只在更新时复制复制到输出目录属性)
  • 确保 构建操作内容

--> 当发布时,文件将放置在该文件夹中并成为应用程序安装的一部分

祝你好运!


2
此外,如果您想在发布时将文件链接包含到应用程序文件中,请确保将链接的文件的“生成操作”设置为“内容”。 - Zebaz
1
我正在尝试将一个xml文件包含在我的应用程序中。我已经按照这里的说明进行了操作,但如果我需要在代码中引用该文件,文件路径是什么? - marky
1
因为它根本不起作用,所以被点踩了。我在我的项目中完全按照这些步骤进行操作,却没有任何结果。 - Russell Steen
1
只有在将该文件夹添加到您发布的主项目中并将构建操作设置为“内容”时,它才能工作! - Ade A
1
因为这并不能解决您拥有大型复杂文件夹结构的情况,而在这种情况下链接所有文件是完全不合理的,所以被踩是有道理的。 - SomeInternetGuy
显示剩余3条评论

0

https://msdn.microsoft.com/en-us/library/kzy0fky2.aspx

https://msdn.microsoft.com/en-us/library/6fehc36e.aspx

这两篇文章提供了实现此操作的方法。在这两个方法中,你能够找到适合你的一个。对我而言可行的是:

在“解决方案资源管理器”中选择一个项目,然后单击“项目”菜单, 再单击“属性”。单击“发布”选项卡。单击“应用程序文件”按钮以打开“应用程序文件”对话框。 在“应用程序文件”对话框中,选择要标记为数据的文件。在“发布状态”字段中,从下拉列表中选择“数据文件”。


0
部署后,所有标记为数据的文件都放置在ApplicationDeployment.DataDirectory文件夹中。我不知道如何更改这个设置。你可以在第一次运行应用程序时复制数据文件,但是这种方法不能在包含数据文件更改的升级中保留。
另外,如果您可以控制开发过程中数据文件夹的位置,可以将其放置在与部署后指定的相同的相对位置(与应用程序文件夹)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接