首页 > 解决方案 > 自定义 ClickOnce 安装路径

问题描述

有没有办法将 ClickOnce 客户端安装文件夹设置为静态的,例如“...\%User%\Appdata\Local\%MyProgram%?

详细信息:
我正在使用 ClickOnce 分发 Intranet 应用程序。一切正常,应用程序按应有的方式安装和更新。我遇到的一个问题是应用程序中的一个模块将文件从一个文件夹移动到另一个文件夹。最终用户安装了趋势科技,每次模块运行时,应用程序都会遭到攻击和隔离。我让 IT 部门将应用程序列入白名单,但由于“...\AppData\Local\Apps\2.0...”下方的随机安装路径,以及趋势科技无法处理“.”。在 2.0 中,他们不得不将“\Local\Apps\”文件夹下的可执行文件列入白名单,这让他们感到不舒服。有没有办法将 ClickOnce 安装文件夹更改为“...

标签: c#clickonce

解决方案


简单的回答:不,您不能更改该路径,它是沙盒的关键部分,是 ClickOnce 的一项功能。即使使用 ClickOnce 清单的自定义操作和重新签名,您也无法更改该路径(这是 ClickOnce 允许您在计算机上安装多个已发布实例的方式之一,即使它们是相同的版本)。

我建议在打包之前(即作为您的发布构建过程的一部分),您使用来自 Verisign 或类似的代码签名证书对您的二进制文件进行签名 - 防病毒产品通常使用它作为是否可以信任某些东西的指标。如果这无法解决问题,请查看是否可以根据文件名而不是文件路径将白名单列入白名单。


推荐阅读