我们有一个桌面产品,由 Win32 服务、通知图标应用程序和相关的 DLL 文件组成。
我的任务是让它自动更新。我们可以编写自己的更新程序,但在我们这样做之前,我想看看还有什么。有没有我们可以使用的商业系统(我猜类似于 Windows 更新)?我确信 InstallShield 曾经提供过类似的功能,但我现在找不到了,而且我可能记错了。
它是一个 Win32 应用程序(和一个服务),所以 ClickOnce 已经过时了(或者是吗?)。
我们有一个桌面产品,由 Win32 服务、通知图标应用程序和相关的 DLL 文件组成。
我的任务是让它自动更新。我们可以编写自己的更新程序,但在我们这样做之前,我想看看还有什么。有没有我们可以使用的商业系统(我猜类似于 Windows 更新)?我确信 InstallShield 曾经提供过类似的功能,但我现在找不到了,而且我可能记错了。
它是一个 Win32 应用程序(和一个服务),所以 ClickOnce 已经过时了(或者是吗?)。
看看Google 的 Omaha 项目。我曾经研究过使用它。但我最终意识到,重新发明轮子比学习让奥马哈发挥作用的所有知识更容易。不幸的是,我还没有找到一个通用的解决方案。我研究过的大多数项目都倾向于构建自己的更新程序。
这很糟糕,因为每个人都倾向于一遍又一遍地犯同样的错误。进行安全更新并非易事。阅读: 自动更新:这安全吗?
我还发现每个自动更新程序都认为它需要在我的系统通知区域中 24/7 全天候运行,这很烦人。
我敢说,应用商店模式的主要优势之一是开发人员不必担心构建更新系统。
我强烈推荐 GUP:https ://wingup.org/
这是Notepad++作者开发的自动更新程序,完全开源。
您可能想要使用此解决方案。包括源代码 (c++)。