谷歌的 Chrome 浏览器在 Windows 上有一个超级流畅的更新系统。它不需要管理权限,并且不需要用户交互就可以更新。
我正在尝试创建与此类似的东西,并希望获得有关如何做到这一点的任何建议。
他们技巧的第一部分是它们Program Files
不像大多数 Windows 程序那样安装到,而是安装到C:\Users\USER_NAME\AppData\Local\Google\Chrome\Application
. 这使他们的程序文件能够在没有管理权限的情况下自行修改。
查看该目录内部,我看到不仅有一个chrome.exe
,而且还有一个old_chrome.exe
. 在网上搜索,我发现 chrome 将自己备份为 old_chrome 以防更新出错,它仍然可以运行某些东西。
那么这样做的方法是创建一个作为安装包的一部分提供的帮助应用程序,您将执行转移到(我认为这在某种程度上是可行的),并且该帮助应用程序执行文件重命名并chrome.exe
在完成后重新启动?(如果是这样,假设这个帮助应用程序在启动时又被删除chrome.exe
,解释了为什么我没有看到它坐在那里。)没有办法简单地chrome.exe
重命名old_chrome.exe
并复制并启动新chrome.exe
的存在吗?
如果这是完成类似工作的最佳方式,是否有任何预先构建的解决方案可以做到这一点,我可以将其加入到我的项目中,因为这似乎是相当通用的功能,或者我是否必须推出这样的东西我?
或者,如果有更好的方法,它是什么?(值得一提的是,Chrome 的方法比 Mozilla 使用服务的新方法更优雅、更直接)