• 首页
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案
目录

安装包与更新包的区别是哪些

安装包与更新包的区别是:更新包与安装包的区别在于,更新包仅包含了需要更新的文件,而安装包包含了全部问题。有的软件每次都提供安装包的原因是进行了较大的修改,更新包无法完成对应的需求。

一、安装包与更新包的区别

更新包与安装包的区别在于,更新包仅包含了需要更新的文件,而安装包包含了全部问题。有的软件每次都提供安装包的原因是进行了较大的修改,更新包无法完成对应的需求。(例如功能增加,界面变更)也可以将更新包理解为windows的补丁,安装包理解为windows xp | window 7。安装包指全新安装。更新包包含更新,一般做升级只用。更细化一点的解释是:

比方说一个软件,总共包含50个工程,那么编译出来就有50个dll,那么它的安装目录下就包含50个dll,还有可能包含一些配置文件或者图片等。

安装过程,其实就是将这50个dll和那些附属文件,从exe(此处以比较常见的exe举例哈,当然还有其他的msi安装程序等)中解压出来,并在你安装时所选择的路径下复制进去,然后加上一些注册表的改动。

更新过程,这个更新的exe中仅包含一部分有功能更新的工程所产生的dll,比如仅仅有10个。那更新的时候仅需要判断你的本地已经装有本软件,然后将这10个新的dll直接覆盖在原先的目录下就可以使用了。这样就大大减小了下载成本,和安装进度,同时又可以完美升级使用新功能,或者修复老版本的bug。

安装包和更新包是可以整合为一个的。每个installshield工程都会有一个少数的product ID,所以在运行exe的时候,通过判断这个productID是否已经存在,就可以选择是直接安装,还是提示更新。

个人认为,选择是整合为一个,还是单独采用升级包,跟所安装的软件更新频率,完整的安装包大小,有直接关系。

更新频率高+安装包大,50M以上,甚至几百M,这种情况下,频率高,意味着相对来说每次修改的工程量少,那么所需要更新的文件就会少,那肯定会选择更新包。因为没有一个用户愿意每2个月就去下载一个几百兆的软件去更新一下。这时候更新包可能只是几M甚至几K,下载和安装都是分分钟的事情,那大家还是乐意去更新一下体验新功能的。

更新频率低+安装包大,这种情况下,意味着更新的工程量相对会多,而且必然是有重大功能的更新和改动,那有可能制作的更新包和安装包的大小就相差无几。这时候肯定会选择直接使用完整的安装包,一个是因为对用户来说,使用更新包优势不明显,另一个是,对企业来说,方便软件版本管理和控制。分别制作一个安装包和更新包,就意味着需要分别维护两套installshield脚本。

如果安装包本身就很小,比方说才10M,无论频率高低,也会选择完整的安装包。理由就如上条所说的。

延伸阅读:

二、在 Windows 沙盒上安装 winget

Windows 沙盒提供了一个轻型桌面环境,可以安全地独立运行应用程序。 安装在 Windows 沙盒环境中的软件保持“沙盒”状态,并独立于主机运行。 Windows 沙盒不包含 winget,也不包含 Microsoft Store 应用,因此你需要从 GitHub 上的 winget 版本页下载最新的 winget 包。

要在 Windows 沙盒上安装 winget 的稳定版本,请从 Windows PowerShell 命令提示符执行以下步骤:

PowerShell

$ProgressPreference=’Silent’

Invoke-WebRequest -Uri https://github.com/microsoft/winget-cli/releases/download/v1.3.2691/Microsoft.Desk较好AppInstaller_8wekyb3d8bbwe.msixbundle -OutFile .\Microsoft.Desk较好AppInstaller_8wekyb3d8bbwe.msixbundle

Invoke-WebRequest -Uri https://aka.ms/Microsoft.VCLibs.x64.14.00.Desk较好.appx -OutFile Microsoft.VCLibs.x64.14.00.Desk较好.appx

Add-AppxPackage Microsoft.VCLibs.x64.14.00.Desk较好.appx

Add-AppxPackage Microsoft.Desk较好AppInstaller_8wekyb3d8bbwe.msixbundle

一站式研发项目管理平台 PingCode

一站式研发项目管理平台 PingCode

支持敏捷\瀑布、知识库、迭代计划&跟踪、需求、缺陷、测试管理,同时满足非研发团队的流程规划、项目管理和在线办公需要。

相关文章

js中==和===的区别

百科

做好项目整合管理的步骤有哪些

百科

做好项目范围管理的关键点有哪些

百科

Java和C#两种开发语言的区别有哪些

百科

编程语言里 string a=\\ 和 string b=null 有什么区别

百科

请问python中()、[]、{}的区别是什么

百科

VBS 和 Powershell 有什么区别

百科

Wolfram语言所谓的 Knowledge-based language 与其他编程语言有什么区别

百科

脚本语言和c语言,c++,java有啥区别

百科

const int &const r2和const int &r2有什么区别

百科