将 Clickonce 部署与后台智能传输服务结合使用
我们正在考虑整个组织中相当大的框架的部署和更新策略。该应用程序将采用.NET 3.5,并将在Windows XP、Vista 和Win 7 计算机上运行。我用过 Clickonce 几次,效果确实很好。 有没有人想到过,或者已经用 Clickonce 实现了 Windows 的 BITS 功能。我觉得 BITS 的涓流升级方法将使频繁的框架更新变得非常用户友好。
任何帮助表示赞赏。
We are thinking about the deployment and update strategy for a fairly large framework throughout our organization. The application will be in .NET 3.5 and will run on Windows XP, Vista and Win 7 machines. I have used Clickonce few times and it works well for sure.
Has anyone thought of, or have implemented the BITS feature of Windows with Clickonce. I feel the trickle upgrade approach of BITS would make the frequent framework updates pretty user friendly.
Any help appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
问题是 BITS 用于在后台传输数据,而 CLICKONCE 或多或少是安装/更新/运行应用程序所需的 DLL/可执行文件的 JIT 下载器。
此外,ClickOnce 是一种开箱即用的体验。它已经可以工作了,而 BITS 解决方案(即使是使用旧的更新程序应用程序块的解决方案)则需要您推出一个用于更新应用程序的框架。
另请注意,没有任何内容表明 BITS 解决方案是一种“涓流”方法。人们可以让它以高优先级批量下载文件,并基本上模拟 ClickOnce 的功能,或者可以将其构建为在后台下载更新,类似于 FireFox 执行更新的方式。
最后,请注意,ClickOnce 确实对默认情况下允许 ClickOnce 部署的应用程序执行的操作,甚至默认情况下允许与哪些资源进行通信有安全影响。点击此处了解更多信息。
The thing is that BITS is used to transfer data in the background, while CLICKONCE is more-or-less a JIT downloader of those DLLs/executables needed to install/update/run an application.
Additionally, ClickOnce is an out-of-box experience. It already works, whereas a BITS solution (even one using the old Updater Application Block) requires you to roll out a framework for updating the application.
Also note that there's nothing saying that a BITS solution would be a "trickle" approach. One could have it download the file in one batch, on high-priority and basically emulate the functionality of ClickOnce, or one could build it to download updates in the background similiar to how FireFox performs updates.
Finally, be aware that ClickOnce does have security ramifications in what the ClickOnce deployed application is allowed to do by default, or even what resources it is allowed to communicate with by default. Read more here.
我曾参与过一个使用 BITS 和 ClickOnce 的项目,但与您想要的上下文不同。 ClickOnce 是一种非常轻量级的应用程序下载机制。然后结合使用 Microsoft 同步服务和 BITS 来同步数据并提取工件(大约 2 GB)。
请记住,使用 ClickOnce,您无需在打开之前强制用户升级。您可以在使用应用程序时升级应用程序,然后下次应用程序启动时将运行新版本。
I have worked on a project that uses BITS and ClickOnce but not in the same context as what you want. ClickOnce was the mechanism for downloading the application which was very light, as light as it could be made. Then using a combination of Microsoft Synchronization services and BITS to synchronize data and pull down artifacts (around 2 GB).
Remember with ClickOnce you do not need to force the user to upgrade before opening. You have the ability to upgrade the application whilst the application is in use and then the next time the application is started the new version will be run.
我怀疑 Clickonce 会有多大帮助,因为您不太可能将其扩展为使用 BITS。也许组合方法会起作用,您最初通过 Clickonce 部署一个小型自定义下载器,该下载器使用 BITS 获取剩余部分并执行所有未来更新。
I doubt that Clickonce would be of much help, because it's unlikely that you could extend it to use BITS. Maybe a combined approach would work where you initially deploy a small custom downloader via Clickonce which uses BITS to get the remaining parts and does all future updates.