Win32应用程序的自动更新解决方案?
我们有一个桌面产品,由 Win32 服务、通知图标应用程序和关联的 DLL 文件组成。
我的任务是研究使其自动更新。我们可以编写自己的更新程序,但在此之前,我想看看还有什么。有没有我们可以使用的商业系统(我猜类似于 Windows Update)?我确信InstallShield曾经提供过类似的东西,但我现在找不到它,可能是我记错了。
它是一个 Win32 应用程序(和一个服务),所以 ClickOnce 已经退出(或者是吗?)。
We've got a desktop product, made up of a Win32 service, a notification icon application and associated DLL files.
I've been tasked to look at making it auto-update. We could write our own updater, but before we do that, I'd like to see what else is out there. Are there any commercial systems (similar to Windows Update, I guess) that we could use? I'm sure that InstallShield used to offer something like this, but I can't find it now, and it's possible that my memory's failing me.
It's a Win32 application (and a service), so ClickOnce is out (or is it?).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
请查看 Google 的奥马哈项目。
我曾经考虑过使用它。但我最终意识到,重新发明轮子比学习奥马哈运作所需的一切更容易。不幸的是我还没有找到通用的解决方案。我研究过的大多数项目都倾向于构建自己的更新程序。
这很糟糕,因为每个人都会一遍又一遍地犯同样的错误。进行安全更新并非易事。读这个:
自动更新:这安全吗?
我还发现每个自动更新程序的想法相当烦人它需要在我的系统通知区域中 24/7 运行。
我敢说应用商店模式的主要优点之一是开发人员不必担心构建更新系统。
Have a look at Google's Omaha project.
I once looked into using it. But I eventually realized it would be easier to re-invent the wheel than to learn everything that goes into making Omaha work. Unfortunately I have yet to find a generic solution. Most project's I've looked into tend to build their own updater.
Which is bad, because everyone tends to make the same mistakes over and over again. Doing secure updates isn't trivial. Read this:
Auto update: Is this secure?
I also find it rather annoying how every auto updater thinks it needs to be running 24/7 in my system notification area.
I would venture to say that one of the main advantages of of the app store model is that developers don't have to worry about building an update system.
我强烈推荐GUP: https://wingup.org/
这是Notepad++作者开发的自动更新程序,完全开源。
I highly recommend GUP: https://wingup.org/
It's the automatic updater developed by Notepad++ author and it's completely opensource.
您可能想要使用此解决方案。包含源代码 (c++)。
You might want to use this solution. Source code (c++) included.