有没有办法强制ClickOnce更新,即使我的应用程序没有运行?

时间:2009-09-04 16:20:22

标签: .net deployment clickonce installation service

我想定期检查ClickOnce应用程序的更新,即使它当前没有运行。我发现了一篇关于使用ClickOnce部署后台服务的帖子,这将允许我运行检查更新的服务,但是设置有点棘手,所以我想知道是否有更简单或更直接的方法。也许只是在我的ClickOnce部署的应用程序中添加一些启动文件夹,而不是使用服务?

修改

我正在考虑这种方法的原因是我基本上想要为一组非常简单的常用应用程序创建一个ClickOnce包装器。这意味着每个应用程序的可执行文件都不会被ClickOnce集成(因为我不控制源代码),所以我不能依赖触发更新的标准方法。

真正的答案可能是使用某种应用程序虚拟化软件,如Xen或Citrix提供的,但我可以使用免费且有点儿的东西。不幸的是,Xen / Citrix针对的是大型IT企业,而不是个人用户,他们厌倦了在庞大的机器上重新安装相同的应用程序集。

3 个答案:

答案 0 :(得分:1)

您可以对其进行配置,以便应用程序在启动时检查更新。除了稍有延迟,这应该在功能上等同。

答案 1 :(得分:1)

据我所知,ClickOnce不支持在应用程序处于休眠状态时更新客户端的需要。如果您作为域管理员在公司工作,则可以将应用程序打包为.msi,并通过组策略“推送”目标计算机的更新。 Here's a link关于如何实现这一目标。

答案 2 :(得分:1)

我会写一个非常简单的.net exe或批处理文件,启动每个“简单的常用应用程序”。然后将开始菜单和文件扩展名等指向您的应用启动器。

您的应用已启动,然后可以检查更新。

我认为没有必要使用“click one”,因为无论如何都很容易通过HTTP自行下载更新。我在过去发现,推动“点击一次”过去简单的情况,它只会导致很多不必要的痛苦。