关于虚拟应用程序包
应用到: System Center Configuration Manager 2007, System Center Configuration Manager 2007 R2, System Center Configuration Manager 2007 R3, System Center Configuration Manager 2007 SP1, System Center Configuration Manager 2007 SP2
主题上次更新时间 - 2008 年 3 月
Configuration Manager 2007 支持运行使用 Microsoft Application Virtualization 平台创建的排序的应用程序。虚拟应用程序包可以在 Configuration Manager 2007 客户端计算机上运行,而不必在本地计算机上安装软件应用程序。目标计算机必须运行 Windows XP 或更高版本才能运行虚拟应用程序包。
使用 Microsoft Application Virtualization Sequencer 创建排序的应用程序后,必须将包导入到 Configuration Manager 2007 中,并将虚拟应用程序包部署到 Configuration Manager 2007 客户端。
备注
本主题中的信息仅适用于 Configuration Manager 2007 R2 和 Configuration Manager 2007 R3。
虚拟应用程序包的术语
使用下列术语来描述虚拟应用程序包和虚拟应用程序包的组件。
- 启用了 Application Virtualization Streaming 的分发点
已启用以将虚拟应用程序包流式传输到 Configuration Manager 2007 客户端的 Configuration Manager 2007 分发点。
- Microsoft Application Virtualization Desktop 客户端
驻留在运行 Windows XP 或 Windows Vista 的 Configuration Manager 2007 客户端计算机上的应用程序,它与 Configuration Manager 2007 站点进行通信和身份验证以接收虚拟应用程序包,并允许在本地运行排序的应用程序。
- Microsoft Application Virtualization 平台
用于创建、存储、分发和运行排序应用程序的 Microsoft 产品的名称。
- Microsoft Application Virtualization Terminal Services 客户端
驻留在终端服务器上的应用程序,它与 Configuration Manager 2007 站点进行通信和身份验证以接收虚拟应用程序包,并允许在本地运行排序的应用程序。
- 排序的应用程序
由 Microsoft Application Virtualization Sequencer 创建的应用程序,流式传输到运行 Microsoft Application Virtualization Terminal Services 客户端或 Microsoft Application Virtualization Desktop 客户端的计算机,可以在其自已的虚拟环境中运行。
- 排序
使用 Microsoft Application Virtualization Sequencer 创建应用程序包的过程。在此过程中,将监视应用程序,配置其快捷方式,并创建包含 .osd、.sft、.sprj 和 .ico 文件的定序应用程序包。
- 流
从启用了 Application Virtualization Streaming 的分发点运行虚拟应用程序包的过程。
- 虚拟应用程序包
已导入到 Configuration Manager 2007 中的 Microsoft Application Virtualization 排序应用程序。
导入新的虚拟应用程序包
要将虚拟应用程序包部署到 Configuration Manager 2007 客户端,必须在 Configuration Manager 2007 中导入一个 Microsoft Application Virtualization 排序应用程序。当您将某个虚拟应用程序导入 Configuration Manager 2007 时,关联的 XML 文件会用于提供虚拟应用程序相关信息,并且系统会将“名称”和“版本”分配到 Configuration Manager 2007 虚拟应用程序包属性。虽然“名称”和“版本”字段由关联的 XML 文件填充,但这些字段仍可更新。XML 文件是一个虚拟应用程序清单,其中还包含了与包关联的其他信息。.sft 文件名称也被更改,并且任何关联的 .osd 文件被配置为引用新的 .sft 文件。
在将新的排序应用程序导入 Configuration Manager 2007 之前,必须创建源目录和目标目录。可以对源目录和目标目录指定任何名称。源目录应包含使用 Microsoft Application Virtualization Sequencer 创建的排序应用程序。您可以使用新建虚拟应用程序包向导来指定排序应用程序源目录位置。源位置可以是下列位置之一:
首次对虚拟应用程序排序时指定的网络位置。
当前保存现有虚拟应用程序的网络位置。
目标目录是排序应用程序将保存在 Configuration Manager 2007 中的位置。
备注
目标目录必须不同于源目录。当您导入虚拟应用程序时,指定的目标目录中的所有文件将被新文件覆盖。
目标文件夹中的虚拟应用程序包可分发至分发点并部署到 Configuration Manager 2007 客户端。仅已使用新建虚拟应用程序包向导导入到目标文件夹的虚拟应用程序包可分发到 Configuration Manager 2007 客户端。有关导入虚拟应用程序包的详细信息,请参阅如何将虚拟应用程序包导入 Configuration Manager。
在您成功完成新建虚拟应用程序包向导后,当您选择“软件分发”节点下面的“包”时,Configuration Manager 控制台的结果窗格中将出现新的虚拟应用程序包对象。
虚拟应用程序包软件组件
无论目标计算机上安装了什么应用程序,虚拟应用程序包都可以运行。需要的软件应用程序包括在虚拟应用程序包中。将虚拟包导入 Configuration Manager 2007 时,与虚拟包关联的所有应用程序都显示在新建虚拟应用程序包向导的“包属性”页面。
虚拟应用程序包没有像标准 Configuration Manager 2007 软件包一样的关联程序。需要的程序包含在虚拟应用程序包中,因此您在分发虚拟应用程序包时无需指定程序。
为运行虚拟应用程序包准备 Configuration Manager 客户端
为使 Configuration Manager 2007 客户端运行虚拟应用程序包,您必须启用播发程序客户端代理。有关为运行虚拟应用程序包启用播发程序客户端代理的详细信息,请参阅如何配置用于运行虚拟应用程序的播发程序客户端代理。
播发程序客户端代理确定哪些播发虚拟应用程序包适合客户端或用户。当找到了播发而且包准备运行时,代理会连接到可用的分发点以下载包并在本地运行,或者从分发点直接运行该包。如果将虚拟应用程序包配置为下载并在目标计算机本地运行,这些包将存储在 Configuration Manager 2007 客户端缓存中。默认 Configuration Manager 2007 客户端缓存大小为 5 GB。您应根据在 Configuration Manager 2007 环境中部署的虚拟应用程序包的大小和量来增加默认缓存大小。有关配置 Configuration Manager 2007 客户端缓存的详细信息,请参阅如何为 Configuration Manager 客户端配置临时程序下载文件夹(缓存)。客户端缓存中只保留各个虚拟应用程序包的最新版本。当较新的虚拟应用程序包版本启动时,虚拟应用程序包的任何之前版本将被删除,并且客户端缓存中存储较新版本。当删除虚拟应用程序时,虚拟应用程序包也会从客户端缓存中删除。
播发程序客户端代理还控制客户端检查播发包的方式,以及当播发包可用或计划运行时客户端的行为方式。通过配置播发程序客户端代理,您可以指定这些客户端行为以及其他客户端设置和运行选项。
还必须安装 Configuration Manager 2007 SP1 客户端软件和 Microsoft Application Virtualization Desktop 4.5 客户端,以使目标计算机运行虚拟应用程序包。有关安装 Configuration Manager 2007 客户端软件的详细信息,请参阅面向安装 Configuration Manager 客户端的任务和如何安装 Microsoft Application Virtualization Client。目标计算机必须运行 Windows XP 及更高版本或 Windows Server 2003 及更高版本,才能运行虚拟应用程序包。
如果您使用“安装软件”任务序列步骤来部署虚拟应用程序包并将播发配置为“按需下载”,则 Configuration Manager 2007 不会将虚拟应用程序包保留在 Configuration Manager 2007 客户端缓存中。
启用虚拟应用程序包流
如果想直接从分发点运行虚拟应用程序包,则必须为流式传输虚拟应用程序包启用可访问的分发点。在您启用流式传输时,虚拟应用程序包将保存在 Configuration Manager 2007 包共享中,位于分发点的任何现有虚拟应用程序包将刷新为最新版本。在分配的虚拟应用程序包缓存到目标计算机之前,Configuration Manager 2007 客户端将直接从网络上的分发点运行该虚拟应用程序包。
备注
不支持向 Configuration Manager 2007 工作组客户端流式传输虚拟应用程序包。
当启用流式传输时,流缓存位置中将保存关联虚拟应用程序包 .sft 文件的单独副本,以便在不必断开活动流式传输会话的情况下更新原始包源。当您禁用分发点流式传输时,.sft 文件的所有副本将从流缓存位置删除。Configuration Manager 2007 客户端需要连接 Configuration Manager 2007 分发点才能流式传输虚拟应用程序包。有关为流式传输启用分发点的详细信息,请参阅如何为虚拟应用程序包启用流式传输。分配到分支分发点的 Configuration Manager 2007 客户端也支持流式传输。有关分支分发点的详细信息,请参阅如何配置分支分发点
重要
分配到分支分发点的 Configuration Manager 2007 客户端使用 SMB 文件流来运行虚拟应用程序包,而不考虑 Configuration Manager 2007 站点模式。
在混合模式环境中,Configuration Manager 2007 客户端使用端口 80 (HTTP) 从分发点连接和运行虚拟应用程序包;在纯模式环境中,客户端使用端口 443 (HTTPS) 流式传输虚拟应用程序包。但是,目标计算机将使用 SMB 从分支分发点连接和运行虚拟应用程序包。下表显示了目标计算机如何根据 Configuration Manager 2007 站点模式连接和运行虚拟应用程序包:
分发点类型 | 默认端口,协议 |
---|---|
混合模式环境中的标准分发点 |
80,HTTP |
纯模式环境中的标准分发点 |
443,HTTPS |
混合模式环境中的分支分发点 |
SMB |
纯模式环境中的分支分发点 |
SMB |
不支持流式传输包含小于 1 kb 的 .sft 文件的虚拟应用程序包。
备注
如果您计划只让目标计算机下载和运行虚拟应用程序包,则不需要为流式传输配置分发点。
播发虚拟应用程序包
您可以向任何 Configuration Manager 2007 集合播发虚拟应用程序包。默认情况下,虚拟应用程序包对关联的子集合也可用。集合中的每个目标计算机都将收到播发,且所有必须的应用程序包含在虚拟应用程序包中。
Configuration Manager 2007 客户端将使用正常的 Configuration Manager 2007 客户端轮询方法来查找播发。有关 Configuration Manager 2007 客户端轮询方法的详细信息,请参阅如何启动 Configuration Manager 客户端策略检索。
您还可以使用任务序列来部署虚拟应用程序包。当使用任务序列来部署虚拟应用程序包时,不需要指定将与该包关联的程序,因为所有必需的程序都包括在虚拟应用程序包中。有关使用任务序列安装软件的详细信息,请参阅如何将软件包作为任务序列的一部分进行安装。当选择一个虚拟应用程序包以作为任务序列的一部分安装时,关联的“程序”行将不可用。您还必须播发虚拟应用程序包任务序列。如果计划流式传输虚拟应用程序包,请在播发任务序列时选择“需要时通过运行任务序列从分发点直接访问内容”。如果计划让目标计算机在本地运行虚拟应用程序包,则选择“启动任务序列之前本地下载所有内容”或“需要时通过运行任务序列本地下载内容”。如果选择“需要时通过运行任务序列本地下载内容”,则 Configuration Manager 2007 任务序列会将虚拟应用程序包下载到目标计算机上的临时缓存位置,注册虚拟应用程序包,将包加载到 Microsoft Application Virtualization (App-V) 缓存并从临时缓存位置中删除包。要使用此选项,必须禁用 App-V RequireAuthorizationIfCached 注册表项。
运行虚拟应用程序包
虚拟应用程序包可以直接从分发点运行,称为流式传输,或者您可以将虚拟应用程序包播发配置为要求 Configuration Manager 2007 客户端下载应用程序并在本地运行。
如果计划从分发点流式传输虚拟应用程序包,则应考虑可用带宽,因为将通过网络访问并运行应用程序。对于通过慢速连接与网络连接的目标计算机,不支持向其流式传输虚拟应用程序包。此外,如果将虚拟应用程序包播发配置为下载到 Configuration Manager 2007 客户端并在本地运行,则必须确保 Configuration Manager 2007 客户端缓存中有足够的可用空间来保存虚拟应用程序包。
如果您计划运行需要动态套件合成的虚拟应用程序包,则您必须将虚拟应用程序包播发配置为“从分发点下载内容并本地运行”。动态套件合成是一项 Microsoft Application Virtualization 平台功能,使虚拟应用程序包允许独立的插件或中间件包安装在本地计算机上以使用虚拟环境。
更新虚拟应用程序包
您可以将导入到 Configuration Manager 2007 的虚拟应用程序包更新到新的应用程序版本,或者应用 Service Pack 或软件更新。但是,如果需要同一应用程序的多个版本,则必须创建新的排序应用程序,并将应用程序导入到 Configuration Manager 2007。更新虚拟应用程序包后,Configuration Manager 2007 将评估包的数据源,并对播发应用程序进行必要的文件更新。Configuration Manager 2007 客户端必须重新启动虚拟应用程序才能使更新版本可用。有关更新虚拟应用程序包的详细信息,请参阅如何更新现有的虚拟应用程序包。
删除虚拟应用程序包
要删除虚拟应用程序包,您必须在新建虚拟应用程序包向导的“常规”页面上选择“不再播发时删除此虚拟应用程序包”。然后,您可以通过删除关联的播发来从 Configuration Manager 2007 客户端中删除虚拟应用程序包。将播发从所分配的集合中删除将从接收该播发的集合中的所有计算机删除虚拟应用程序包。
备注
当您卸载 Configuration Manager 2007 R2 时,现有的虚拟应用程序包将不会从目标计算机和分发点中删除。
如果想要从一台计算机上删除包,则必须从接收播发的集合中删除该计算机。有关删除虚拟应用程序包的详细信息,请参阅如何从 Configuration Manager 客户端删除虚拟应用程序包。
虚拟应用程序包工具
以下列表描述了可帮助您在 Configuration Manager 2007 环境中管理虚拟应用程序包的工具的名称和简要描述。默认情况下,这些文件位于下列目录中:<ConfigMgr 安装路径>\SMS\Tools\VirtualApp。
ManageVAppPackage.vbs – 使用 ManageVAppPackage.vbs 文件更新现有虚拟应用程序包或导入新虚拟应用程序。
SetRetensionRules.vbs – 使用 SetRetensionRules.vbs 文件为 Configuration Manager 2007 中的虚拟应用程序包配置保持策略。
AppVirtMgmtClient.sms – 使用 AppVirtMgmtClient.sms 文件创建 Configuration Manager 2007 包以安装 App-V 客户端。
AppVirtMgmtSequencer.sms – 使用 AppVirtMgmtSequencer.sms 将 App-V 顺序器安装到您的 Configuration Manager 2007 环境中。
有关使用这些工具的详细信息,请参阅 Configuration Manager 2007 虚拟应用程序包工具自述文件,您可以通过打开位于 <ConfigMgr安装路径>\SMS\Tools\VirtualApp 目录中的文件 VAppPackageToolsReadme.htm 来查看该文件。
虚拟应用程序包报表
有 7 个虚拟应用程序包报表检索 Configuration Manager 2007 中虚拟应用程序包的相关数据。以下列表显示了各个报表的“名称”和关联的“类别”:
带有特定虚拟应用程序的计算机 - 虚拟应用程序
计算所有虚拟应用程序包实例数量 - 虚拟应用程序
带有特定虚拟应用程序包的计算机 - 虚拟应用程序
计算所有虚拟应用程序实例数量 - 虚拟应用程序
启用虚拟应用程序流的所有分发点 - 软件分发 - 包
分发点流存储中的所有虚拟应用程序包 - 软件分发 - 包
特定虚拟应用程序包的流存储分发状态 - 软件分发 - 包
您可以使用这些报表来获取您的 Configuration Manager 2007 环境中的虚拟应用程序包使用情况和分发信息。有关虚拟应用程序报表的详细信息,请参阅关于软件分发的功能报表。
另请参阅
其他资源
有关其他信息,请参阅 Configuration Manager 2007 Information and Support。
要与文档团队联系,请将电子邮件发送至 SMSdocs@microsoft.com。