具体地说,这适用于.NET 2.0桌面应用程序。目前,我们要求用户通过我们的网站手动完成更新过程。
在后台执行客户端静默或自动升级的最佳方法是什么?
谢谢!
发布于 2010-01-24 02:04:48
我建议你读一读微软的.NET Applications Lifecycle Guide的第四章。我要推广的是连接一个自动更新系统--你可以编写一个小系统来联系你自己的web服务器,检查是否有可用的升级,下载并安装升级补丁。
发布于 2010-01-24 02:01:22
你可以看看ClickOnce或Updater Application Block。
发布于 2010-01-24 02:49:29
我不是ClickOnce的铁杆粉丝。我喜欢这个概念,但不喜欢它的具体实现。
我过去做应用程序更新系统的方式是将应用程序的所有文件压缩到一个容器文件中,并将其放在我的web服务器上。为了方便起见,我自动创建了容器文件。在web服务器上,我有一个版本信息文件,其中列出了当前版本和容器的url,如下所示:1.0.0.0|http://www.example.com/path/to/container.file。要解析版本信息文件,应用程序需要做的就是使用管道字符'|‘拆分文件内容。第一个数组元素将是版本号,第二个元素将是容器文件路径。
在启动时,我让应用程序检查web服务器上的版本信息文件,并确定那里列出的版本是否在运行版本之后。如果有更新,应用程序会提示用户。如果用户需要更新,应用程序将从版本信息文件中指定的url下载容器,并将内容保存在应用程序的文件夹中,将当前运行的可执行文件重命名为xxx.exe.old,以允许将新的可执行文件另存为xxx.exe。然后,应用程序自行重新启动,新的exe删除xxx.exe.old。
当您想要发布应用程序的新版本时,您需要做的就是增加应用程序的版本号,用新的版本号更新版本信息文件,并将更新后的容器文件上传到您的web服务器。
https://stackoverflow.com/questions/2124077
复制相似问题