gpt4 book ai didi

.net - self 更新应用程序

转载 作者:行者123 更新时间:2023-12-04 04:54:29 25 4
gpt4 key购买 nike

我有一个关于小组的一般性问题。我即将为我的团队启动一个大型项目,我怀疑我们将作为桌面应用程序进行(在我的应用程序前景中,我通常是一个网络人,但我愿意改变。)

我最担心的是,公司当前的桌面应用程序已经很难维护,或者更重要的是,在需要进行更改时分发。所以我想开发一些东西来提示用户(我们的员工)在他们的计算机上过时时更新软件。

那些以前做过这件事的人,我会很感激任何关于要注意哪些陷阱的建议。此外,我会对任何人发现有助于解决类似要求的任何在线资源感兴趣。

谢谢。

编辑:我意识到我很烂!!我确实忘记提及一些最重要的细节。它将是一个 Window 应用程序,使用 .NET 框架编写,针对 Win XP 及更高版本。

最佳答案

如果你想自己实现它,也很容易。我们的应用程序使用大致以下 API 定期轮询 Web 服务以获取信息:

getVersion(Installation ID): returns release version to be installed and hash of all files
getFileList(Version ID): gets a list of files and file hashes for the release
getFile(File ID): gets one file

优点:通过将逻辑编码到您的 getVersion 方法中,您可以将不同的版本推送给不同的客户,它还允许您首先将 beta 版本推送给有限数量的客户。

检查所有下载文件的哈希值可确保您的应用程序正确下载文件。这也可用于修复损坏的应用程序文件。当发布的哈希与所有下载文件的哈希匹配时,就可以安装了。

要安装,请让您的主程序启动更新应用程序并退出。更新应替换所有更改的应用程序文件。更新程序还可以运行与发布相关的任何 SQL 更改脚本或注册表更改。

在更新程序结束时,再次启动您的主应用程序,并让主应用程序在需要时更新更新程序。它们相互更新,因此您可以将错误修复推送到更新程序和主应用程序。

我还建议在向客户推送新版本之前测试降级,这样如果发现任何严重错误,您可以自动切换到旧的稳定版本。

关于.net - self 更新应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1671073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com