更新已由 Workspace ONE Access 进行管理且包含在组织目录中的 ThinApp 软件包涉及多个步骤。更新后的 ThinApp 软件包可能会由贵组织中的其他组向您提供。为确保 Workspace ONE Access 可针对授权用户自动使用更新软件包而不是现有软件包,必须确保创建更新软件包时使用的 AppID 与当前软件包相同,VersionID 值大于现有软件包的 VersionID 值,并且更新软件包已启用,以便由 Workspace ONE Access 进行管理。

前提条件

验证您对受管 ThinApp 软件包所在的位置是否具有访问权限,以及是否可以在该位置创建子文件夹。

过程

  1. 获取受管 ThinApp 软件包的 AppID 和 VersionID 值
  2. 创建已更新的 ThinApp 软件包
  3. 将已更新的 ThinApp 软件包复制到网络共享

获取受管 ThinApp 软件包的 AppID 和 VersionID 值

要确保 Workspace ONE Access 自动使用更新的 ThinApp 软件包而不使用当前软件包,在创建更新的 ThinApp 软件包时,必须使用当前受管 ThinApp 软件包的 AppID 值,以及大于当前版本的VersionID 值。

使用设置捕获过程创建更新的 ThinApp 软件包时,设置捕获过程会从现有 ThinApp 软件包的可执行文件中自动检索 AppID 值,且 VersionID 值将自动递增。但是,创建更新的 ThinApp 软件包的人员可能还会使用其他方法来创建更新的软件包。如果不使用设置捕获过程创建更新的 ThinApp 软件包,创建该软件包的人员必须获取当前由 Workspace ONE Access 管理的 ThinApp 软件包的 AppIDVersionID 值。AppIDVersionID 值显示在 Workspace ONE Access 控制台上 ThinApp 软件包资源页面内的相应页面中。

过程

  1. Workspace ONE Access 控制台中,选择资源 > 虚拟应用程序
  2. (可选) 单击类型列标题中的图标,然后按名称搜索软件包,或者选择 ThinApp 软件包以查看所有 ThinApp 软件包。
  3. 单击 ThinApp 软件包。
  4. 记下以下值。
    • 页面的定义部分中的版本值。
    • ThinApp 软件包部分的 GUID 列中列出的 AppID 值。

      Workspace ONE Access 使用 GUID 列中列出的值来标识此 ThinApp 软件包。

下一步做什么

要创建更新的 ThinApp 软件包,请完成创建已更新的 ThinApp 软件包中的步骤。

创建已更新的 ThinApp 软件包

获取由 Workspace ONE Access 管理的 ThinApp 软件包的 AppIDVersionID 值后,按照此过程创建已更新的 ThinApp 软件包,以确保 Workspace ONE Access 自动使用已更新的 ThinApp 软件包。

当前受管 ThinApp 软件包的 AppIDVersionID 值用于创建更新的软件包。更新的软件包使用同一 AppID 值和更高的 VersionID 值。

有时,更新的 ThinApp 软件包由您组织内的其他团队提供。创建更新的 ThinApp 软件包的人员可以使用本部分介绍的方法之一。

前提条件

验证您是否已通过执行获取受管 ThinApp 软件包的 AppID 和 VersionID 值中的步骤获得了当前 ThinApp 软件包的 AppIDVersionID 值。

验证您是否拥有与 Workspace ONE Access 版本兼容的 ThinApp 程序版本。有关 ThinApp 特定版本的信息,请参阅位于以下位置的 VMware 产品互操作性列表:http://www.vmware.com/resources/compatibility/sim/interop_matrix.php。

过程

  • 使用 Workspace ONE Access 支持的某个 ThinApp 程序版本,按照其中一种可用方法创建更新的 ThinApp 软件包。
    选项 描述
    使用“设置捕获”功能重新捕获。 Workspace ONE Access 管理的现有 ThinApp 软件包的项目文件夹不可用时,请使用此方法。要使用“设置捕获”功能创建更新的软件包,您只需要以下项目:
    • 现有 ThinApp 软件包的应用程序可执行文件
    • 应用程序安装程序
    • “设置捕获”功能及 Workspace ONE Access 支持的 ThinApp 程序版本。

    在捕获过程中,选择通过 Workspace ONE Access 管理软件包,并指定软件包是对现有的基础 ThinApp 软件包的更新。浏览到包含当前受管 ThinApp 软件包的可执行文件的文件夹。指向该文件夹,而非具体的可执行文件。

    使用此方法时,您无需在创建更新的软件包之前获取 AppIDVersionID 值。在“设置捕获”中指定软件包是更新软件包并指向之前版本的软件包之后,捕获过程将读取之前版本软件包的 AppID,然后将其重新用于更新的软件包。该过程还为更新的软件包提供递增的 VersionID,并分配相同的 InventoryName

    手动更新 Package.ini 文件,然后重建软件包。 当您没有应用程序安装程序可用于重新捕获过程时,或者需要将软件包更新为某个更新版本的 ThinApp,并且要更新的内容超出 relink 命令的处理能力时,请使用此方法。因为重建软件包的过程会合并新版本的 ThinApp 为文件系统和注册表引入的更改,重建操作会选出这些更改,例如当新版本的 ThinApp 提供您要设置的 Package.ini 新参数时。
    要将新软件包标记为更新软件包,请在 Package.ini 文件的 [Build Options] 部分编辑以下 Workspace ONE Access 参数:
    • AppID 参数设置为与当前受管 ThinApp 应用程序的 AppID 一致的值。您不能将 genid 的值重新用于 AppID,因为如果这样做,稍后会为更新的软件包生成一个新的 AppID 值,这会导致 Workspace ONE Access 无法识别新软件包是对现有软件包的更新。
    • VersionID 参数的值增大到一个比当前受管 ThinApp 软件包的值更高的整数。如果当前管理的软件包未设置 VersionID 参数,则该值默认为 1,这时要向 Package.ini 文件中添加一个 VersionID 参数行,并将其值设置为 2 (VersionID = 2)。
    • 确保 InventoryName 参数值与当前受管软件包的 InventoryName 值一致。当前软件包和更新的软件包的 InventoryName 值必须完全相同。
    使用包含 AppID 和 VersionID 选项的 relink -h 命令。 在以下任何一种情况下,使用此方法:
    • 您没有应用程序的项目文件夹。
    • 您已在 Workspace ONE Access 环境外部捕获、构建并测试了软件包,剩下的步骤仅包括为 Workspace ONE Access 启用已更新的软件包并将其放在 Workspace ONE Access Connector 使用的网络共享中。
    • 您在更新软件包时只是要更新软件包的 ThinApp 运行时,以便合并新版本 ThinApp 中提供的错误修复。

    例如,如果您更改了虚拟应用程序的项目目录(包括 Package.ini 文件)、重建了软件包并对其进行了测试,而测试环境可能并非 Workspace ONE Access。更新应用程序的最后一个阶段是为 Workspace ONE Access 启用应用程序。这时,最简单的途径是使用 relink -h 命令,而不是重新捕获或重建。

    注: 对 ThinApp 软件包运行 relink -h 命令时,始终会对 ThinApp 运行时进行更新。

    您可以从 ThinApp Program Files 目录运行 relink 命令来获得有关命令语法的帮助。

    当现有 ThinApp 软件包已启用并可供 Workspace ONE Access 使用时,您可以运行以下命令来重用软件包的现有 AppID 并增大 VersionID

    relink -h -VersionID + executable-folder/*.*

    其中,executable-folder 是包含您要更新的 ThinApp 软件包的可执行文件的文件夹。

    重要事项: 使用 relink 命令时,不能将其直接指向 Workspace ONE Access 环境中用于 ThinApp 软件包的网络共享上的软件包可执行文件的文件夹。该命令在更新 ThinApp 运行时期间,会将旧的可执行文件转换为 BAK 文件,并将这些 BAK 文件与新文件一起写入文件夹。由于网络共享通常不允许写入文件,因此您必须将 relink 指向可执行文件的文件夹的一个副本。

    其他有关 relink 命令的使用案例(包括启用 ThinApp 软件包以便在 Workspace ONE Access 环境中使用)在位于 http://kb.vmware.com/kb/2021928 的 VMware 知识库文章中有所介绍。

结果

您将拥有更新的 ThinApp 软件包的一套文件(EXE 文件和可选的 DAT 文件)。

下一步做什么

通过完成将已更新的 ThinApp 软件包复制到网络共享中的步骤,将文件复制到网络共享上的新子文件夹内。

将已更新的 ThinApp 软件包复制到网络共享

创建已更新的 ThinApp 软件包之后,您将相应的文件复制到网络共享上与现有子文件夹相同级别的新子文件夹中,以确保 Workspace ONE Access 自动使用已更新的 ThinApp 软件包。

前提条件

验证在完成创建已更新的 ThinApp 软件包中的步骤并对 VersionID 值进行递增后,您是否拥有更新的 ThinApp 软件包的文件。

验证您是否有权访问网络共享,以及是否可以创建子文件夹并将文件复制到其中。

过程

  1. 在网络共享文件夹中,为更新的 ThinApp 软件包创建一个新的子文件夹。
    保留所更新的 ThinApp 软件包的现有子文件夹,不要更改其内容。

    在计划的下一次同步之后,当识别出新软件包具有相同的 AppID 值和更高的 VersionID 值时,Workspace ONE Access 将忽略旧的软件包。

    通常情况下,您可以为子文件夹命名,以匹配 ThinApp 应用程序的名称,或指示文件夹中有哪些应用程序。例如,如果网络共享名为 appshare,位于一个名为 server 的主机上,而应用程序名为 abceditor,则 ThinApp 软件包的子文件夹为 \\server\appshare\abceditor

    注: 在使用 Workspace ONE Access 为要分发的 ThinApp 软件包创建网络共享子文件夹名称时,请不要使用非 ASCII 字符。不支持非 ASCII 字符。
  2. 将更新的 ThinApp 软件包的 EXE 和 DAT 文件复制到这个新的子文件夹内。
  3. (可选) 如果您不想等待下次计划同步时间,可以使用 Workspace ONE Access 控制台中的“打包的应用程序 - ThinApp”页手动将 Workspace ONE Access 与网络共享同步。

    Workspace ONE Access Connector 与网络共享文件夹进行计划的同步时,如果发现某个应用程序与另一应用程序具有相同的 AppID,则会比较它们的 VersionID 值。VersionID 值最高的 ThinApp 软件包将作为最新的更新。Workspace ONE Access 会自动将以往的用户授权并入 VersionID 最高的 ThinApp 软件包,并对用户系统上的快捷方式进行同步,使其指向更新的软件包。

下一步做什么

下次 ThinApp 软件包同步后,Workspace ONE Access 目录将显示更新的 ThinApp 软件包的新版本。如果您希望看到 ThinApp 软件包的资源页面中反映新版本,可以使用 Workspace ONE Access 控制台的“打包的应用程序 - ThinApp”页进行手动同步。