我的应用程序将最初与Windows Installer一起部署。运行时无提示更新应用程序
我要寻找的解决方案的主要特点包括:
支持静默更新,而应用程序是 运行(或自动重启 客户端)
易于维护和管理包装 过程
避免复杂的自定义或 安装脚本
你有什么想法,我该怎么做到这一点?即使这意味着修改应用程序代码以支持任何想法。
应用是.NET 2.0
我的应用程序将最初与Windows Installer一起部署。运行时无提示更新应用程序
我要寻找的解决方案的主要特点包括:
支持静默更新,而应用程序是 运行(或自动重启 客户端)
易于维护和管理包装 过程
避免复杂的自定义或 安装脚本
你有什么想法,我该怎么做到这一点?即使这意味着修改应用程序代码以支持任何想法。
应用是.NET 2.0
您是否考虑过使用ClickOnce进行部署?它有一个工厂以编程方式检查更新和可选强制才能进行安装 - 看http://msdn.microsoft.com/en-us/library/ms404263.aspx
的Proxy Design Pattern
将帮助你实现这一目标,而这是用于插件的模式。
另一个简短的解释是用Gang of Four - Proxy Design Pattern
。
注意程序集的Shadow Copying
对于这个技巧绝对有用,因为您将更新后的程序集复制到应用程序程序集文件夹中,然后可以使应用程序知道更改,然后卸载旧程序集并加载新的变更生效,也就是说,甚至不必重新启动应用程序,这对最终用户来说绝对透明。
更简单的方法可能是ClickOnce Deployment
,您可能有兴趣阅读有关遵循所需链接的信息。
您能否更好地解释这种模式对我有何帮助? – 2010-11-18 15:48:03
我的应用程序是桌面客户端,我不认为点击一次可以成为部署的可行选项。 – 2010-11-18 15:51:31
+1 - ClickOnce绝对适合桌面部署。例如,只需在将ClickOnce部署期间的更新路径设置为URL,然后您的应用程序就会尝试在启动时连接到此URL,以便它可以检查更新。 – 2010-11-18 15:55:50
部署网址不需要是URL。它可以是UNC路径。您可以将clickonce安装程序设置为始终检查,并且每当用户重新启动应用程序时,用户都将获得新版本。 – 2010-11-18 17:01:30