介绍
Windows 应用程序可以在单个终端上安装和管理,或集中托管并远程交付给用户,这取决于应用程序和基础设施的要求。在这些模型之间进行选择不仅仅是比较技术。本文解释了 Windows 应用程序打包的工作原理,它与应用程序发布的不同之处,以及何时使用每种方法的合理性,以及 IT 团队如何在同一应用程序交付策略中结合这两者。
什么是Windows应用程序打包?
Windows 应用程序打包涉及准备一个应用程序及其所需的文件、配置和元数据,以便进行可预测的安装和管理。
与其在所有目标系统上手动配置应用程序,IT团队可以使用标准化包来使安装、配置、更新和删除更加一致。
微软的现代Windows打包模型包括MSIX,它支持包身份的提供、可预测的安装和卸载、受控的更新以及与Windows功能的集成。
传统的 Win32 应用程序可以利用 MSI 和 EXE 安装程序等技术。
应用程序打包因此决定了需要安装的内容、安装和卸载的方式、提供给用户的配置以及升级的方式。其目的是使应用程序部署在目标Windows环境中可重复和可管理。
应用程序包包含什么?
应用程序包的内容取决于包装技术和应用程序本身。
安 MSIX 包 例如,将应用程序的有效载荷与定义包身份、依赖关系和功能等元素的清单结合在一起。这里的重要区别在于,包定义了分发和部署的单元,而不是指定应用程序必须运行的位置。
传统企业打包还可以涉及转换或封装现有安装程序,添加配置,定义部署逻辑并在发布前验证最终包。
应用程序打包不仅仅是将应用程序文件放入另一个文件中。它旨在使软件安装可重复、可管理和可支持。
Windows 应用程序打包:它是如何工作的?
打包工作流程因应用程序、打包格式和管理平台而异。然而,大多数打包工作流程通常分为三个不同的阶段:发现、包创建和部署前测试。
应用程序发现与需求
在对现有应用程序进行重新打包之前,管理员必须了解应用程序的安装程序修改了什么,以及应用程序在运行时需要什么。
发现活动包括但不限于:
- 文件和目录
- 注册表项
- Windows 服务
- 运行时依赖项
- 环境变量
- 文件关联
- 权限
- 快捷方式和配置文件
应用程序部署的环境可能与安装程序一样重要。在开发人员的工作站上开发和测试的应用程序在使用标准用户权限、在干净的企业Windows映像上或在一个时,可能会表现得不同。 多用户Windows Server环境 .
软件包创建与配置
IT团队随后使用适当的打包技术为给定的软件和部署模型准备应用程序。
在Windows应用程序的情况下,这可能意味着创建一个MSIX包。这可能涉及保留现有使用Win32的MSI或EXE安装程序形式的软件,或将某些应用程序转换为MSIX。不同的打包方法可以为包提供身份,同时允许软件保持其现有安装模型的元素。
因此,没有一种单一的打包格式适合所有Windows应用程序。应用程序、其环境和管理需求应决定打包方法。
测试与部署
软件包应为 在干净的系统上测试 复制目标生产环境。
测试过程应包括安装、首次启动、依赖关系、更新、应用程序功能和卸载行为。管理员还应检查权限和用户特定配置是否正确处理,特别是在打包应用程序时可能发生的文件或注册表重定向的情况下。
验证后,软件包可以通过组织首选的软件分发或终端管理平台进行分发。
现在,让我们退一步,澄清一个微妙但至关重要的区别:
应用程序被打包,然后部署
这些功能的分离很重要,因为它为应用程序发布创建了一个自然的过渡点。
什么是Windows应用程序发布?
Windows 应用程序发布 用于通过网络或互联网向授权用户发布安装在集中式Windows基础设施上的应用程序。
该应用程序在远程 Windows 主机上执行,而不是在每个用户的终端上执行。在这种情况下,用户通过兼容的客户端、快捷方式或网页浏览器访问远程执行的应用程序。
在服务器上安装应用程序 → 用户获得访问权限 → 在服务器上执行应用程序 → 将应用程序界面交付给用户
这种方法不同,因为管理员不需要在每个终端上安装和维护业务应用程序,而是需要在托管用户会话的服务器上进行维护。因此,用户能够访问一个似乎无缝融入其工作环境的应用程序,尽管它是托管在集中式基础设施上。
Windows 应用程序打包与应用程序发布:它们有什么区别?
最简单的区分是:
应用程序打包决定了软件如何准备安装和管理。应用程序发布决定了用户如何访问在集中基础设施上执行的软件。
这些技术因此在应用交付的不同阶段运作。
| 问题 | Windows 应用程序打包 | 应用发布 |
|---|---|---|
| 主要目的 | 准备软件以便可重复安装和维护 | 为用户提供对集中托管应用程序的访问权限 |
| 主要IT问题 | 我们应该如何安装和管理这个应用程序? | 用户应该如何访问和运行此应用程序? |
| 应用程序运行在哪里? | 在接收应用程序的任何系统上 | 在发布或会话主机上 |
| 用户端的本地安装? | 通常需要用于终端部署 | 通常不需要完整的应用程序安装 |
| 更新 | 必须达到适用的部署目标 | 可以集中应用于发布主机 |
| 端点要求 | 端点必须支持本地执行的应用程序 | 端点主要需要一种兼容的访问方法 |
| 典型范围 | 软件生命周期和端点/服务器管理 | 集中应用交付 |
| 常见用例 | 管理的个人电脑,标准化软件,受控发布 | 远程用户、个人设备自带、遗留应用程序和集中应用程序访问 |
一个资格:应用程序打包并不决定该软件的操作地点。
MSIX、MSI或任何其他形式的包可以部署到工作站、笔记本电脑、虚拟机或服务器。打包决定了软件的安装和维护方式。因此,目标部署决定了应用程序的安装位置。
应用程序发布引入了进一步的架构考虑。应用程序在集中基础设施上处理,而其界面则在远程端点上交付给授权用户。
在什么情况下您可以同时使用应用程序打包和发布?
是的。它们在应用交付生命周期中解决不同的点,可以独立使用或组合使用。
考虑一个拥有业务线Windows应用程序的组织。如果需要在本地运行,可以将其打包并部署到每个受管理的终端:
包 → 部署到终端 → 应用程序在本地运行
如果组织需要集中管理,可以将其打包或安装在相关的会话主机上,然后发布:
打包或安装 → 部署到集中式主机 → 发布 → 应用程序在中心运行
在这种情况下,应用程序打包并不一定被放弃。它只是应用于集中式主机,而不是每个用户的设备,这可以简化在多个发布服务器上保持应用程序的一致性。
应用程序打包和应用程序发布并不是相互排斥的:打包标准化了应用程序的安装和维护,而发布则决定了其访问方式。根据应用程序的需求,IT可以使用一种方法、另一种方法或两者结合。
在什么情况下使用Windows应用程序打包更好?
当本地执行有利时,Microsoft Windows 应用程序打包最为合适,并且 IT 可以有效管理托管应用程序的设备。在这种情况下,它使安装和维护的标准化成为可能,同时将应用程序执行位置留给用户。
用户需要离线访问
本地安装的应用程序可以有效运行,即使用户无法访问中央资源,这在移动员工、外勤人员和其他游牧工作者中经常发生。
包装帮助IT组织通过对受管终端的安装、配置和更新进行标准化,确保一致地使用这种方法。
应用程序依赖于本地硬件或处理
某些应用程序在本地运行时效果最佳,因为它们本质上依赖于或与终端的资源集成。
本地部署避免了应用程序与资源之间引入远程会话,而打包提供了一种可重复的方法,用于在能够支持本地执行的终端上安装和配置应用程序。
端点已标准化并集中管理
包装在组织已经拥有一套受控的Windows设备和一个端点管理平台来管理它们的情况下也是有意义的。如果环境中大多数设备和操作系统在相同的配置级别上相似,本地应用程序的部署和管理可能不会出现重大困难。
软件包提供了一种有组织的应用程序管理方法,这使得在最终用户设备上安装和维护应用程序的任务变得更加容易。在这种情况下,引入中央执行可能不是必要的,并且会增加额外的复杂性,除非确实有这样的业务需求。
因此,关键问题不是应用程序是否可以打包,而是考虑到特定环境和要求,是否可行在每个目标设备上安装、更新和管理它。
应用发布何时更有意义?
当本地安装带来不必要的操作或兼容性复杂性时,应用程序发布变得更加可取。
几个典型情况值得考虑。
远程和分布式用户
远程工作人员、分支机构人员和承包商并不总是在管理良好的位置或设备上工作,例如公司电脑。
应用程序发布将 Windows 应用程序保留在中央服务器上,同时允许 remote access 由授权用户使用,从而减轻管理员在每个远程设备上复制应用程序环境的负担。
BYOD和混合终端环境
一个Windows应用程序可能并不一定能在特定组织使用的每种设备上执行。
发布应用程序将执行环境与最终用户解耦。通过使用这种方法,个人可以通过其机器上的批准浏览器或客户端访问集中托管的Windows应用程序,而该应用程序在其他情况下将无法运行。
此策略非常适合自带设备(BYOD)和其他存在多个终端操作系统的环境。
遗留Windows应用程序
遗留应用程序 可能会通过依赖操作系统依赖项、老化组件和困难的配置约束来使部署工作变得复杂。
集中应用程序可以帮助减少IT需要使软件正常工作的环境。这并不一定能解决应用程序兼容性问题,但可以将这些问题限制在受控的Windows主机上,而不是一个庞大的终端集合。
这可以简化在组织朝着长期现代化计划努力时对遗留应用程序访问的标准化。
需要频繁更新的应用程序
频繁的应用程序更改使其本地部署变得更加困难,尤其是在终端数量增加时。
通过应用程序发布,管理员在相关的中央主机上更新应用程序。用户随后可以访问更新后的应用程序,而无需在所有终端上更新软件。
当许多用户依赖同一个应用程序但不必在本地使用时,这个过程尤其有利。
IT团队应该如何在打包和发布之间进行选择?
IT团队应该关注应用程序的操作要求,而不是技术的选择。
如果本地安装易于维护,您的终端设备受到严格控制,并且用户需要离线或依赖硬件的功能,则打包的终端部署最为合理。如果您的用户分布广泛,终端设备异构,本地安装具有挑战性,或者应用程序更容易集中更新,则应用程序发布可以减少终端管理的开销。
许多企业将需要这两种模式。您的托管桌面用户可能会获得本地部署的应用程序,但承包商、远程办公人员或使用未管理设备的人员可能会获得对特定业务软件的集中发布访问权限。
如果IT将三个问题解耦,选择就变得更加清晰。
- 应用程序应该如何打包和维护?
- 应用程序应该在哪里部署和运行?
- 用户应该如何访问它?
将包装、部署和访问视为独立的决策,阻止了将两种根本不同的技术进行比较,仿佛它们是相同的解决方案。
TSplus Remote Access 如何成为解决方案?
希望实现集中式Windows应用程序交付而无需将完整应用程序部署到每个终端的组织可以使用 TSplus 远程访问 发布选定的Windows应用程序或从集中式Windows基础设施提供完整的远程桌面。
管理员可以将应用程序分配给特定用户或组,并通过支持的远程客户端或基于浏览器的 HTML5 连接提供访问。这使得应用程序发布成为支持远程用户、BYOD 环境或更易于集中维护的 Windows 应用程序的组织的一个选项。
结论
Windows 应用程序打包提供了一种可重复的方式来安装、配置和维护软件,而应用程序发布则使用户能够访问在集中基础设施上运行的应用程序。这两种方法并不相互替代,且都可以成为同一应用程序交付策略的一部分。
正确的模型取决于应用程序要求、端点管理和用户访问需求。通过分别考虑打包、部署位置和访问,IT团队可以决定应用程序是应该在本地、集中运行还是通过两种模型的组合运行。
TSplus远程访问免费试用
终极的Citrix/RDS替代方案,用于桌面/应用访问。安全、经济高效、本地/云端