【发布时间】:2015-03-06 01:12:34
【问题描述】:
我们目前有一个 WPF 应用程序,它使用 ClickOnce 部署在我们公司网络内的文件服务器上。设置为应用启动前自动更新,允许离线运行(以防文件服务器因某种原因宕机),我们勾选了“创建桌面图标”。
在我们的 CI 构建中,我们注入了版本控制,并且我们尝试增加版本号的不同部分以尝试强制更改。这没有任何效果。
如果用户尝试从开始菜单或桌面快捷方式运行应用程序,它永远不会自动更新。
如果我们删除桌面快捷方式,右键单击服务器上的 .application 文件并选择“发送到桌面”,生成的桌面快捷方式将自动更新而不会失败。
有没有人遇到过这个问题,如果有,是如何解决的?
我们的临时解决方案是删除初始安装时创建的快捷方式,并如上所述手动创建快捷方式,但感觉有点像hack!
已编辑:根据 Karel 的评论添加了更多信息。
【问题讨论】:
-
ClickOnce 仅在检测到版本更改时更新应用程序,您是否更改了应用程序的版本号?有一个选项可以在您发布时自动增加版本号。
-
我们实际上使用脚本来增加它,并尝试手动进行。编辑了原始帖子以包含该信息。
-
打开 Fiddler,尝试从开始菜单启动应用程序。检查 Fiddler 以查看它是否正在访问服务器。
-
启用 Clickonce 日志记录并查看问题的真正原因。很可能是清单中的程序集标识已更改,并且运行时拒绝新的更新,即使它可以找到它。
标签: wpf clickonce auto-update