Citrix DaaS™

应用程序

简介

如果您的部署仅使用交付组(而不使用应用程序组),请将应用程序直接添加到交付组。当应用程序组可用时,最好将应用程序添加到应用程序组,因为这种做法可以简化管理。每个应用程序必须至少与一个交付组或应用程序组关联。

在“添加应用程序”向导中,您可以选择一个或多个交付组,或一个或多个应用程序组,但不能同时选择两者。尽管您以后可以更改应用程序的组关联(例如,将应用程序从应用程序组移动到交付组),但最佳实践不鼓励增加这种复杂性。将您的应用程序保留在一种类型的组中。

当您将应用程序与多个组关联时,如果您没有足够的权限在所有这些组中查看应用程序,则可能会出现可见性问题。在这种情况下,请咨询具有更高权限的管理员,或者扩展您的范围以包括与该应用程序关联的所有组。

如果您向同一用户发布两个同名应用程序(可能来自不同的组),请更改 Studio 中的 Application name (for user) 属性。否则,用户会在 Citrix Workspace™ 应用程序中看到重复的名称。

您可以在添加应用程序时或之后更改其属性(设置)。您还可以在添加应用程序时或之后更改应用程序所在的应用程序文件夹。

添加应用程序

您可以在创建或编辑交付组或应用程序组时添加应用程序。以下过程介绍了在创建组后如何添加应用程序。

须知:

  • 您无法将应用程序添加到远程电脑访问交付组。
  • 您不能使用“添加应用程序”向导从交付组或应用程序组中删除应用程序。那是一个单独的操作。

将一个或多个应用程序添加到多个交付组或应用程序组

要将应用程序添加到多个组,请执行以下步骤:

  1. 在左侧窗格中,选择要添加应用程序的位置:
    • 要添加到交付组,请单击 交付组,然后选择目标交付组。
    • 要添加到应用程序组,请单击 应用程序,选择 应用程序组 选项卡,然后选择应用程序组。
  2. 在操作栏中选择 添加应用程序。此时将启动“添加应用程序”向导,其中包含 简介 页面。单击 下一步。
  3. 按照向导中的步骤配置设置:

    1. 在 组 页面上,选择要添加应用程序的交付组和应用程序组,然后单击 下一步。有关详细信息,请参阅选择组。
    2. 在 应用程序 页面上,指定要添加的应用程序,然后单击 下一步。有关详细信息,请参阅指定应用程序。
    3. 在 摘要 页面上,查看设置:
      • 如果要添加 10 个或更少的应用程序,其名称将列在 要添加的应用程序 中
      • 如果要添加 10 个以上的应用程序,则会指定总数。
    4. 单击 完成。

向交付组或应用程序组添加一个或多个应用程序

要向组中添加应用程序,请执行以下步骤:

  1. 在左侧窗格中,选择要添加应用程序的位置:
    • 要添加到交付组,请单击 交付组,然后选择目标交付组。
    • 要添加到应用程序组,请单击 应用程序,选择 应用程序组 选项卡,然后选择应用程序组。
  2. 选择操作栏中的添加应用程序。
  3. 按照向导中的步骤配置设置:

    1. 在应用程序页面上,指定要添加的应用程序,然后单击下一步。有关详细信息,请参阅指定应用程序。
    2. 在摘要页面上,查看设置:
      • 如果您要添加 10 个或更少的应用程序,它们的名称将列在要添加的应用程序中
      • 如果您要添加 10 个以上的应用程序,将指定总数。
    3. 单击完成。

选择组

添加应用程序向导中的组页面列出了站点中的所有交付组。如果存在应用程序组,则会列出应用程序组和交付组。

您可以选择交付组或应用程序组,但不能同时选择两者。也就是说,您不能在同一操作中将应用程序添加到交付组和应用程序组。如果您正在使用应用程序组,建议将应用程序添加到这些应用程序组,而不是交付组。

选中至少一个组旁边的复选框。每个应用程序必须至少与一个组关联。

指定应用程序

添加应用程序向导中的应用程序页面允许您指定要添加到所选组或多个组的应用程序。

单击添加以显示应用程序源。

  • 从“开始”菜单:在所选交付组中的计算机上发现的应用程序。选择此源时,将启动一个新页面,其中包含发现的应用程序列表。选中要添加的应用程序的复选框,然后单击确定。

    如果出现以下情况,则无法选择此源:

    • 选择没有关联交付组的应用程序组。
    • 选择关联了交付组但交付组中不包含任何计算机的应用程序组。
    • 选择不包含任何计算机的交付组。
  • 手动: 交付组中的 VDA 或网络中其他位置的应用程序。选择此源将打开一个新页面,您可以在其中通过以下方式指定要添加的应用程序:
    • 键入可执行文件的路径、工作目录、可选命令行参数以及管理员和用户的显示名称。
    • 从交付组中的 VDA 选择应用程序。为此,请单击 浏览,输入用于访问 VDA 的凭据,等待连接到 VDA,然后从 VDA 中选择一个应用程序。所选应用程序的属性会自动填充页面上的字段。
  • 现有: 以前添加到站点的应用程序。选择此源时,将启动一个新页面,其中包含发现的应用程序列表。选中要添加的应用程序的复选框,然后单击 确定。

    如果站点没有应用程序,则无法选择此源。

  • 应用程序包: App-V、MSIX、MSIX app attach 或 FlexApp 应用程序包中的应用程序。选择此源时,将启动 从包中添加应用程序 页面。选择一个应用程序包源,从结果显示中选择要添加的应用程序,然后选择 确定。有关详细信息,请参阅部署和交付 App-V 应用程序。

  • 应用程序组:应用程序组。选择此源时,将启动一个新页面,其中包含应用程序组列表。(尽管显示内容也列出了每个组中的应用程序,但您只能选择组,而不能选择单个应用程序。)所选组中的所有当前和未来应用程序都将添加。选中要添加的应用程序组的复选框,然后单击 确定。

    如果出现以下情况,则无法选择此源:(1) 没有应用程序组,或者 (2) 所选交付组不支持应用程序组(例如,具有静态分配计算机的交付组)。

如表中所示,如果不存在该类型的有效源,则无法选择 添加 列表中的某些源。不兼容的源(例如,不能将应用程序组添加到应用程序组)不包含在列表中。已添加到您所选组的应用程序无法选择。

您可以从此页面或稍后更改应用程序的属性(设置)。

默认情况下,添加的应用程序放置在名为 Applications 的应用程序文件夹中。您可以从此页面或稍后更改应用程序。

如果您尝试添加应用程序,并且同一文件夹中已存在同名应用程序,系统会提示您重命名您正在添加的应用程序。您可以接受提供的新名称,也可以拒绝然后重命名应用程序或选择其他文件夹。

例如,如果 app 存在于 应用程序 文件夹中,并且您尝试将另一个名为 app 的应用程序添加到该文件夹,则会提供新名称 app_1。

更改应用程序的组关联

添加应用程序后,您可以更改与该应用程序关联的交付组和应用程序组。

您可以将应用程序拖动到其他组。这是使用操作栏中命令的替代方法。

如果应用程序通过应用程序组或直接与多个交付组关联,则可以使用组优先级来指定评估多个组的顺序。

可以根据访问策略、用户列表或智能访问标签等因素将组排除在考虑范围之外,并且从组中选择的特定计算机可能会受到区域首选项、启动就绪状态以及任何标签限制等因素的影响。默认情况下,所有组的优先级均为 0(最高)。如果交付组具有相同的优先级,则选择负载最低的交付组来启动应用程序。在这种情况下,不考虑垂直负载平衡。

应用程序可以与包含可交付应用程序的共享(非私有)计算机的交付组关联。您还可以选择包含仅交付桌面的共享计算机的交付组,如果:

  • 交付组包含共享计算机,并且是使用早于 7.9 的 XenDesktop 7.x 版本创建的
  • 您拥有 Edit delivery group 权限。提交属性对话框时,交付组类型会自动转换为 desktops and applications。
  1. 在左侧窗格中选择 应用程序,然后选择该应用程序。
  2. 在操作栏中选择 属性。
  3. 选择 组 页面。
    • 要添加组,请单击 添加 并选择 应用程序组 或 交付组。(如果您尚未创建任何应用程序组,则唯一条目是 交付组。)然后,选择一个或多个可用组。与应用程序不兼容或已与应用程序关联的组无法选择。
    • 要删除组,请选择一个或多个组,然后单击 删除。如果删除组关联导致应用程序不再与任何组关联,系统将提醒您该应用程序将被删除。
    • 要更改组的优先级,请选择该组,然后单击 编辑优先级。选择一个优先级值,然后单击 确定。
  4. 完成后,单击 应用 以应用更改并保持窗口打开,或单击 确定 以应用更改并关闭窗口。

更改应用程序属性

您一次只能更改一个应用程序的属性。

要更改应用程序的属性:

  1. 在左侧窗格中选择 应用程序。
  2. 选择一个应用程序,然后在操作栏中选择 属性。
  3. 在左侧窗格中,选择包含要更改的属性的页面。
  4. 完成后,单击 应用 以应用所做的任何更改并保持窗口打开,或单击 保存 以应用更改并关闭窗口。
页面名称 描述
标识

指定应用程序描述和名称\:
  • 用户和管理员看到的应用程序名称。
  • 描述,以及 StoreFront 的关键字(如果需要)。
  • 交付




    指定此应用程序如何交付给用户:
  • 图标
  • 应用程序在其商店中显示的类别或文件夹。
  • 是否在用户的桌面上创建快捷方式。
  • 限制。请参阅 配置应用程序限制。
  • 打包应用程序的可见性:Citrix Virtual Desktops、Citrix Virtual Apps 或两者。
  • 位置


    指定以下位置:
  • 可执行文件路径;请参阅将参数传递给已发布的应用程序。
  • 命令行参数;请参阅将参数传递给已发布的应用程序。
  • 工作目录
  • 组 添加、删除或更改应用程序可用交付组或应用程序组的优先级。
    限制可见性
    控制哪些用户可以在 Citrix Workspace 应用程序中看到该应用程序。即使是不可见的应用程序也可以启动。要使其不可用且不可见,请将其添加到其他组。
    注意: 目前,此功能仅适用于 AD 和 Microsoft Entra 用户。对于 Microsoft Entra 用户,应用程序可见性限制需要 VDA 版本 2411 或更高版本。
    文件类型关联 指定应用程序自动打开哪些扩展名。
    区域 当您的站点包含多个区域时,请指定区域是否影响应用程序启动。

    应用程序更改可能不会对当前应用程序用户生效,直到他们从会话中注销。

    配置应用程序限制

    配置应用程序限制以帮助管理应用程序使用。例如,您可以使用应用程序限制来管理同时访问应用程序的用户数量。同样,应用程序限制可用于管理资源密集型应用程序的并发实例数量。该限制有助于维护服务器性能并防止服务质量下降。

    此功能限制由 Controller 代理的应用程序启动次数(例如,来自 Citrix Workspace 应用程序和 StoreFront),而不是通过其他方法启动的正在运行的应用程序数量。这意味着应用程序限制有助于管理员管理并发使用,但并非在所有情况下都提供强制执行。例如,当 Controller 处于中断模式时,无法应用应用程序限制。

    默认情况下,同时运行的应用程序实例数量没有限制。有多种应用程序限制设置。您可以配置其中任何一个或全部。

    • 交付组中所有用户可同时运行的应用程序最大实例数。
    • 交付组中每个用户一个应用程序实例。
    • 每台计算机可同时运行的应用程序最大实例数(仅限 PowerShell)。

    如果配置了限制,当用户尝试启动超出配置限制的应用程序实例时,将生成错误消息。如果配置了多个限制,则在达到第一个限制时报告错误。

    使用应用程序限制的示例:

    • 最大并发实例数限制: 在交付组中,您将应用程序 Alpha 的最大并发实例数配置为 15。之后,该交付组中的用户同时运行 15 个该应用程序的实例。如果该交付组中的任何用户现在尝试启动 Alpha,则会生成错误消息。Alpha 未启动,因为它将超出配置的并发应用程序实例限制 (15)。
    • 每个用户一个实例的应用程序限制: 在另一个交付组中,您为应用程序 Beta 启用了每个用户一个实例的选项。用户 Tony 成功启动了应用程序 Beta。当天晚些时候,当该应用程序仍在 Tony 的会话中运行时,他尝试启动 Beta 的另一个实例。生成错误消息,并且 Beta 未启动,因为它将超出每个用户一个实例的限制。
    • 最大并发实例数和每个用户一个实例的限制: 在另一个交付组中,您配置了最大并发实例数为 10,并为应用程序 Delta 启用了每个用户一个实例的选项。之后,当该交付组中的 10 个用户每人都有一个 Delta 实例正在运行时,该交付组中任何其他尝试启动 Delta 的用户都将收到错误消息。Delta 未启动。如果这 10 个当前 Delta 用户中的任何一个尝试启动该应用程序的第二个实例,他们将收到错误消息,并且第二个实例将不会启动。
    • 每台计算机的最大并发实例数,以及使用标签限制: 应用程序 Charlie 具有许可和性能要求,这些要求决定了特定服务器上可以同时运行的实例数。这些要求还决定了站点中所有服务器上可以同时运行的实例数。

      每台计算机的应用程序实例限制会影响站点中的任何服务器(而不仅仅是特定交付组中的计算机)。假设您的站点有三台服务器。对于应用程序 Charlie,您将每台计算机的应用程序实例限制配置为 2。因此,站点范围内最多允许启动六个应用程序 Charlie 实例。(这意味着三台服务器上每台服务器的 Charlie 实例限制为两个。)

      要将应用程序的使用限制为交付组中的特定计算机(除了限制站点中所有计算机上的实例):

      • 对这些计算机使用标记功能。
      • 为该应用程序配置每台计算机的最大实例数限制。

    如果应用程序通过控制器代理以外的方法启动(例如,当控制器处于中断模式时),并且超出了配置的限制,则用户无法启动更多实例,直到他们关闭足够的实例以不再超出限制。超出限制的实例不会被强制关闭。它们被允许继续运行,直到其用户关闭它们。

    如果禁用会话漫游,则禁用每个用户一个实例的应用程序限制。如果启用每个用户一个实例的应用程序限制,请勿配置允许在新设备上创建新会话的两个值中的任何一个。有关漫游的信息,请参阅会话。

    要配置每个交付组的最大实例数限制和每个用户一个实例的限制:

    1. 在左侧窗格中选择应用程序,然后选择一个应用程序。
    2. 在操作栏中选择属性。
    3. 在交付页面上,选择以下选项之一。

      • 允许无限制使用。同时运行的实例数量没有限制。这是默认设置。
      • 为应用程序设置限制。有两种限制类型;指定其中一种或两种。
        • 指定每台计算机可以同时运行的最大实例数
        • 限制为每个用户一个应用程序实例
    4. 点击“确定”以应用更改并关闭对话框,或点击“应用”以应用更改并保持对话框打开。

    配置每台计算机的最大实例限制(仅限 PowerShell):

    • 在 PowerShell 中(对于 Citrix Cloud™ 部署,使用远程 PowerShell SDK;对于本地部署,使用 PowerShell SDK),输入适当的 BrokerApplication cmdlet 并附带 MaxPerMachineInstances 参数。
    • 如需指导,请使用 Get-Help cmdlet。例如:

      Get-Help Set-BrokerApplication –Parameter MaxPerMachineInstances

    复制、启用或禁用、重命名或删除应用程序

    提供以下操作:

    • 复制: 您可能希望复制应用程序以创建具有不同参数或属性的不同版本。复制应用程序时,它会自动使用唯一的后缀重命名并放置在原始应用程序旁边。您可能还希望复制应用程序,然后将其添加到不同的组。(复制后,移动应用程序最简单的方法是拖动它。)
    • 启用或禁用: 启用和禁用应用程序与启用和禁用交付组或应用程序组是不同的操作。
    • 重命名: 您一次只能重命名一个应用程序。如果您尝试重命名应用程序,并且同一文件夹或组中存在同名应用程序,系统会提示您指定其他名称。
    • 删除: 删除应用程序会将其从与之关联的交付组和应用程序组中移除,但不会从最初用于添加应用程序的源中移除。删除应用程序与从交付组或应用程序组中移除应用程序是不同的操作。

    要复制、启用、禁用、重命名或删除应用程序:

    1. 在左侧窗格中选择“应用程序”。
    2. 选择一个或多个应用程序,然后在操作栏中选择相应的任务。
    3. 出现提示时,确认操作。

    从交付组中删除应用程序

    应用程序必须至少与一个交付组或应用程序组关联(属于)。如果您尝试从交付组中删除某个应用程序,而此操作将导致该应用程序与任何交付组或应用程序组的关联被移除,则系统会通知您,如果继续操作,该应用程序将被删除。发生这种情况时,如果您想交付该应用程序,则必须从有效源再次添加它。

    1. 在左侧窗格中选择 交付组,然后选择一个交付组。
    2. 在 应用程序 选项卡上,选择要删除的应用程序。
    3. 从操作栏中选择 从交付组中删除。
    4. 确认删除。

    从应用程序组中删除应用程序

    应用程序必须至少属于一个交付组或应用程序组。如果您尝试从应用程序组中删除某个应用程序,而此操作将导致该应用程序不再属于任何组,则系统会通知您,如果继续操作,该应用程序将被删除。发生这种情况时,如果您想交付该应用程序,则必须从有效源再次添加它。

    1. 在左侧窗格中选择 应用程序。
    2. 选择应用程序组,然后选择一个或多个应用程序。
    3. 在操作栏中选择 从应用程序组中删除。
    4. 确认删除。

    将参数传递给已发布的应用程序

    使用应用程序属性的 位置 页面输入命令行并将参数传递给已发布的应用程序。

    当您将已发布的应用程序与文件类型关联时,符号 "%*"(用双引号括起来的百分号和星号)将附加到应用程序命令行的末尾。这些符号用作传递给用户设备的参数的占位符。

    如果发布的应用程序未按预期启动,请验证其命令行是否包含正确的符号。默认情况下,当附加符号 "%*" 时,将验证用户设备提供的参数。对于使用用户设备提供的自定义参数的已发布应用程序,符号 "%**" 将附加到命令行以绕过命令行验证。如果应用程序的命令行中没有这些符号,请手动添加它们。

    如果可执行文件的路径包含带空格的目录名称(例如 "C:\Program Files"),请将应用程序的命令行用双引号括起来,以指示空格属于命令行。为此,请在路径周围添加双引号,并在 %* 符号周围添加另一组双引号。请务必在路径的结束引号和 %* 符号的开始引号之间包含一个空格。

    例如,已发布应用程序 Windows Media Player 的命令行是:

    "C:\Program Files\Windows Media Player\mplayer1.exe" "%*"

    注意:

    用于启动已发布应用程序的命令行(包括参数)的最大字符数为 203。

    排查已发布应用程序的会话注销问题

    发布应用程序时,仅指定已发布应用程序的主可执行文件。但是,某些应用程序可能会生成在后台运行的额外(子)进程,并且当主已发布应用程序关闭时,相应的主可执行文件不会关闭这些进程。额外进程也可能由运行的脚本或特定的注册表项(如 Run 和 RunOnceKey)创建。这些应用程序可能会阻止正常注销,导致会话滞留或挂起,并可能导致会话不关闭且用户未注销。

    在这种情况下,您需要使用 Citrix Director 重置或退出这些会话。

    为了帮助识别和排查会话未正确注销的问题,Citrix 提供了三个注册表项。识别和排查由于这些问题导致会话未正确注销是一个三步过程:

    1. 识别哪些具有已发布应用程序的会话正在阻止正常注销

    2. 识别这些已发布应用程序是否生成任何额外(子)进程

    3. 将这些进程添加到指定的注册表项以防止它们阻止注销

    步骤 2:识别这些已发布应用程序是否生成任何额外(子)进程

    一旦确定已发布应用程序阻止正常注销,下一步是确定此应用程序在运行时是否生成额外进程。

    您可以阅读 HKCU\Software\CitrixVolatile\Seamless\Sessions\[ID]\LogoffCheckerBlockingProcess 以确定在关闭已发布的应用程序时是否有任何进程阻止正常注销。

    在以下示例中,密钥 LogoffCheckerBlockingProcess 包含以下条目:

    PhoneExperienceHost.exe
    SkypeApp.exe
    SkypeBackgroundHost.exe
    <!--NeedCopy-->
    

    这些进程阻止了正常注销。

    注意:

    将 [ID] 替换为您要检查的会话的正确会话 ID。

    步骤 3:将这些进程添加到指定的注册表项中,以防止它们阻止注销

    您可以将这些进程添加到以下注册表项中,以防止它们在将来的会话中阻止注销:

    Add the process file name to the following registry key:
    Caution! Refer to the Disclaimer at the end of this article before using the Registry Editor.
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI
    Value Name:LogoffCheckSysModules
    Type:REG_SZ
    String:MyAppName.exe
    <!--NeedCopy-->
    

    有关 LogoffCheckSysModules 的更多信息,请参阅 从已发布的应用程序正常注销使会话处于活动状态。

    分步故障排除指南

    1. 在测试中的 VDA 下启动远程注册表服务:

      1. 在“控制面板”中,选择 管理工具 > 服务。

      2. 右键单击 远程注册表服务 并选择 属性。

      3. 在 启动类型 下,从下拉菜单中选择 自动。

      已发布的应用程序注册表

    2. 关闭测试中的 VDA 上的 Windows 防火墙,或创建入站防火墙规则以启用端口 455:

      1. 在控制面板中,选择 Windows Defender Firewall > Advanced Settings。

      2. 右键单击 Inbound Rules 并选择 New Rule。

      3. 在 新建入站规则向导 中,选择 端口。

      4. 在 Protocols and Ports 页面上,选择 TCP and Specific Local Ports。输入 445 作为本地端口。

      5. 在 Action 页面上,选择 Allow Connection。

      6. 选择要应用新入站规则的防火墙配置文件。

      7. 命名防火墙规则并选择 Finish 以退出 New Inbound Rule wizard。

      已发布的应用程序防火墙端口

    3. 从同一域中的另一台 VM(可以是 DC、DDC 或其他 VDA),运行 Regedit 并连接到远程注册表。

      已发布的应用程序注册表编辑器

    4. 输入受测 VDA 的 IP 地址并单击 OK。regedit 树必须显示受测 VDA 的分支。

      已发布的应用程序注册表编辑器

    5. 打开 Command Prompt 已发布的应用程序。

      已发布的应用程序管理

      Command Prompt 应用程序显示在 Citrix Workspace app 中。

      已发布的应用程序命令提示符(/en-us/citrix-daas/media/published-app-cmd-prompt.png)

    6. 在客户端上打开 连接中心。这用于在关闭已打开的无缝应用程序后,监控会话何时注销。我们可以从下图中看到,命令提示符进程 c:\Windows\system32\cmd.exe 在远程 VDI 上处于活动状态。

      已发布的应用程序连接(/en-us/citrix-daas/media/published-app-citrix-workspace-connection-center.png)

    7. 从运行 regedit 的 VDA,转到以下远程 IP 位置: HKEY_USERS\S-1-X-XX-XXXXXXXX-XXXXXXXXXXX-XXXXXXXXXX-XXXX\SOFTWARE\CitrixVolatile\Seamless\Sessions\X\

      注意:

      此路径在每次打开新会话时都会更改。

    8. 这里有两个要读取的键(请勿在此处更改它们):LogoffCheckBlockingProcess 和 LogoffCheckerBlockingVisibleProcess。这些键显示任何阻止注销的程序。第一个必须显示 C:\Windows\System32\cmd.exe,因为它已打开且尚未关闭。

      注意:

      LogoffCheckBlockingProcess 和 LogoffCheckerBlockingVisibleProcess 不得手动编辑。手动编辑这些注册表值可能导致会话不稳定。

      已发布的应用程序 2(/en-us/citrix-daas/media/published-app-regedit-2.png)

    9. 单击右上角的 X 以退出 无缝 CMD。

    10. 检查连接中心以查看会话是否关闭。关闭可能需要长达 30 秒。如果会话关闭,则表示没有应用程序或进程阻止正常注销。

      正常注销(/en-us/citrix-daas/media/published-app-bwd.png)

    11. 如果会话未关闭,请使用 F5 刷新 regedit 输出。

    12. 再次检查 LogoffCheckBlockingProcess 和 LogoffCheckerBlockingVisibleProcess 的内容。CMD 不应再存在,但应该有另一个列出的进程。任何当前阻止会话注销的进程都必须在此处显示。

      在这种情况下,Notepad.exe 在命令提示符关闭之前从已发布的命令提示符中打开,并且此远程记事本进程阻止了正常注销。

      注册表编辑器

    13. 记下此可执行文件的路径及其所在的密钥,然后将其输入到远程树下的以下注册表项中:

      • 如果它出现在 LogoffCheckBlockingProcess 中:HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWILogoffCheckSysModulesInternal
      • 如果它出现在 LogoffCheckerBlockingVisibleProcess 中:HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWILogoffCheckVisibleSysModules

      注意:

      如果密钥中已有一个或多个条目,请在末尾添加逗号,然后将新条目放在逗号后面。

      注册表编辑器-最终

    14. 从客户端的连接中心注销会话,然后重新打开远程应用程序。

    15. 重复步骤 9-16,直到在关闭远程应用程序后 30 秒内自动注销会话。

      注意:

      故障排除后,如果需要,请还原临时防火墙更改以允许远程注册表访问。

    如何修改 LogonUI 以在打开已发布的应用程序时全尺寸查看 Windows 免责声明消息

    对于未发生身份验证直通的场景,LogonUI 窗口缩放已得到改进。LogonUI 窗口根据所使用的显示器分辨率和 DPI 设置进行缩放,这确保了完整的 LogonUI 窗口可见,而不会出现任何裁剪。

    窗口大小(以像素为单位)也可以在注册表中手动设置。

    1. 打开 注册表编辑器,在 运行 命令中使用 regedit。

    2. 转到 HKEY_LOCAL_MACHINE\Software\Citrix\CtxHook\AppInit_DLLS\Seamless Hook\。

    3. 创建两个新的 DWORD 键:LogonUIWidth 和 LogonUIHeight。

    4. 将这些键的值设置为 LogonUI 窗口所需的像素宽度和高度。

      手动设置 LogonUI 窗口大小时,将禁用自动缩放。

    注意:

    这些注册表路径已从 2407 及更高版本开始更改。旧的注册表值将被忽略并已弃用。

    默认情况下,LogonUI 窗口包含一个带有关闭按钮的标题栏,如果需要,最终用户可以通过该按钮断开会话连接。

    禁用标题栏

    您可以使用以下注册表项禁用 LogonUI 窗口中的标题栏:

    1. 打开注册表编辑器,在 运行 命令中使用 regedit。

    2. 转到 HKEY_LOCAL_MACHINE\Software\Citrix\CtxHook\AppInit_DLLS\Seamless Hook\。

    3. 创建新的 DWORD 键:LogonUICaption,并将该键的值设置为 0。

      带标题栏的 LogonUI 窗口

    管理应用程序文件夹

    默认情况下,您添加到交付组的新应用程序会放置在名为 Applications 的文件夹中。您可以在创建交付组、添加应用程序或之后指定不同的文件夹。

    须知:

    • 您无法重命名或删除 Applications 文件夹,但可以将其包含的所有应用程序移动到您创建的其他文件夹中。
    • 文件夹名称可包含 1–64 个字符。允许使用空格。
    • 文件夹最多可以嵌套五层。
    • 文件夹不必包含应用程序。允许使用空文件夹。
    • 除非您移动文件夹或在创建时指定不同的位置,否则文件夹在 Web Studio 中按字母顺序排列。
    • 您可以拥有多个同名文件夹,只要每个文件夹都有不同的父文件夹即可。同样,您可以拥有多个同名应用程序,只要每个应用程序位于不同的文件夹中即可。
    • 您必须拥有 View Applications 权限才能查看文件夹中的应用程序,并且必须拥有该文件夹中所有应用程序的 Edit Application Properties 权限才能删除、重命名或删除包含应用程序的文件夹。
    • 以下大多数过程都要求使用 Web Studio 中的操作栏执行操作。或者,您可以使用右键单击菜单或拖动项目。例如,如果您在不希望的位置创建或移动了文件夹,可以将其拖放到正确的位置。
    • Studio 中的所有节点(例如 Machine Catalogs、Delivery Groups、Applications 和 Application Groups)在后端共享相同的文件夹树。为避免在重命名或移动文件夹时出现名称冲突,请对不同节点中的一级文件夹使用唯一的名称。

      如果您使用 New-BrokerAdminFolder SDK cmdlet 创建文件夹并希望它显示在 Applications 节点下,则必须使用 Set-BrokerAdminFolderMetadata cmdlet 添加 ContainsApplications 元数据。

      示例:

       Set-BrokerAdminFolderMetadata -AdminFolderId {adminFolderUid} -Name ContainsApplications -Value true
       <!--NeedCopy-->
      

    要管理应用程序文件夹,请在左侧窗格中选择 Applications。请使用以下列表作为指导。

    • 要查看所有文件夹(不包括嵌套文件夹): 单击文件夹列表上方的 Show all。
    • 要在最高级别(非嵌套)创建文件夹: 选择 Applications 文件夹。要将新文件夹放置在 Applications 以外的现有文件夹下,请选择该文件夹。然后,在操作栏中选择 Create Folder。输入名称。
    • 要移动文件夹: 选择该文件夹,然后在操作栏中选择 Move Folder。一次只能移动一个文件夹,除非该文件夹包含嵌套文件夹。(移动文件夹最简单的方法是拖动它。)
    • 要重命名文件夹: 选择该文件夹,然后在操作栏中选择 Rename Folder。输入名称。
    • 要删除文件夹: 选择该文件夹,然后在操作栏中选择 Delete Folder。删除包含应用程序和其他文件夹的文件夹时,这些对象也会被删除。删除应用程序会从交付组中移除应用程序分配。它不会将其从计算机中移除。
    • 要将应用程序移动到文件夹中: 选择一个或多个应用程序。然后,在操作栏中选择 Move Application。选择该文件夹。

    在创建交付组或应用程序组时,您还可以在 Application 页面上将要添加的应用程序放置在文件夹中。默认情况下,添加的应用程序会进入 Applications 文件夹。单击 Change 以选择或创建文件夹。

    控制已发布的桌面上的应用程序的本地启动

    当用户从已发布的桌面中启动已发布的应用程序时,您可以控制该应用程序是在该桌面会话中启动还是作为已发布的应用程序启动。Citrix Workspace 应用程序会在 VDA 上的 Windows 注册表中搜索应用程序的安装路径,如果存在,则启动应用程序的本地实例。否则,将启动应用程序的托管实例。如果您启动未安装在 VDA 上的应用程序,则会启动托管应用程序。有关详细信息,请参阅 vPrefer launch。

    在 PowerShell 中(使用 Citrix Cloud 部署中的远程 PowerShell SDK 或本地部署中的 PowerShell SDK),您可以更改此操作。

    在 New-Broker Application 或 Set-BrokerApplication cmdlet 中,使用 LocalLaunchDisabled 选项。例如:

    Set-BrokerApplication -LocalLaunchDisabled <Boolean>

    默认情况下,此选项的值为 false (-LocalLaunchDisabled $false)。当从已发布的桌面中启动已发布的应用程序时,该应用程序会在该桌面会话中启动。

    如果将此选项的值设置为 true (-LocalLaunchDisabled $true),则会启动已发布的应用程序。这会从已发布的桌面(使用适用于 Windows 的 Citrix Workspace 应用程序)创建到已发布的应用程序的单独附加会话。

    要求和限制:

    • 应用程序的 ApplicationType 值必须为 HostedOnDesktop。
    • 此选项仅通过相应的 PowerShell SDK 提供。它目前在 Web Studio 图形界面中不可用。
    • 此选项最低要求:StoreFront 3.14、适用于 Windows 的 Citrix Receiver 4.11 和 Delivery Controller 7.17。