Citrix Virtual Apps and Desktops

应用程序

注意:

从版本 2511 开始,Citrix Web Studio(基于 Web)是 Citrix Virtual Apps and Desktops™ 的唯一管理控制台。Citrix Studio(基于 MMC)已从安装程序中移除。本文仅适用于 Web Studio。有关 Citrix Studio 的信息,请参阅 Citrix Virtual Apps and Desktops 7 2212 或更早版本中的相应文章。

简介

如果您的部署仅使用交付组(而不使用应用程序组),则将应用程序添加到交付组。如果您还拥有应用程序组,通常会将应用程序添加到应用程序组。此指南可简化管理。应用程序必须始终至少属于一个交付组或应用程序组。

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

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

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

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

有关详细信息,请参阅:

添加应用程序

您可以在创建交付组或应用程序组时添加应用程序。这些过程在创建交付组创建应用程序组中进行了详细说明。以下过程描述了在创建组后如何添加应用程序。

须知:

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

要添加一个或多个应用程序:

  1. 在左侧窗格中选择应用程序,然后在操作栏中选择添加应用程序
  2. “添加应用程序”向导将启动并显示简介页面,您可以选择在以后启动此向导时不再显示此页面。
  3. 向导将引导您完成应用程序摘要页面。完成每个页面后,单击下一步,直到到达摘要页面。

如果要将应用程序添加到单个交付组或应用程序组,可采用以下替代步骤 1 的方法:

  • 要仅向一个交付组添加应用程序: 在步骤 1 中,在 Web Studio 左侧窗格中选择交付组,在中间窗格中选择一个交付组,然后在操作栏中选择添加应用程序。向导不会显示页面。
  • 要仅向一个应用程序组添加应用程序: 在步骤 1 中,在 Web Studio 左侧窗格中选择应用程序,在中间窗格中选择一个应用程序组,然后在操作栏中应用程序组名称下选择添加应用程序条目。向导不会显示页面。

组页面

此页面列出了站点中的所有交付组。如果您还创建了应用程序组,则此页面会列出应用程序组和交付组。您可以从任一组中选择,但不能同时从两个组中选择。换句话说,您不能同时将应用程序添加到应用程序组和交付组。通常,如果您正在使用应用程序组,请将应用程序添加到应用程序组,而不是交付组。

添加应用程序时,请选中至少一个交付组(或应用程序组,如果可用)旁边的复选框。每个应用程序必须始终至少与一个组关联。

应用程序页面

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

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

    如果出现以下情况,则无法选择此源:(1) 您选择了没有关联交付组的应用程序组,(2) 您选择了具有关联交付组但其中不包含任何计算机的应用程序组,或者 (3) 您选择了不包含任何计算机的交付组。

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

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

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

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

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

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

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

默认情况下,添加的应用程序放置在名为 Applications 的应用程序文件夹中。可以从此页面或稍后更改应用程序。如果尝试添加应用程序,并且同一文件夹中存在同名应用程序,系统会提示重命名要添加的应用程序。可以接受提供的新名称,也可以拒绝,然后重命名应用程序或选择其他文件夹。例如,如果 app 已存在于 Applications 文件夹中,并且尝试将另一个名为 app 的应用程序添加到该文件夹,则会提供新名称 app_1

摘要页面

如果添加 10 个或更少的应用程序,其名称将列在要添加的应用程序中。如果添加 10 个以上的应用程序,则会指定总数。

查看摘要信息,然后单击完成

更改应用程序的组关联

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

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

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

应用程序可以与包含可交付应用程序的共享(非专用)计算机的交付组关联。如果出现以下情况,还可以选择包含仅交付桌面的共享计算机的交付组:(1) 交付组包含共享计算机,并且是使用早于 7.9 的 XenDesktop 7.x 版本创建的,并且 (2) 具有 Edit delivery group 权限。提交属性对话框时,交付组类型会自动转换为 desktops and applications

  1. 登录 Web Studio,在左侧窗格中选择应用程序,然后选择该应用程序。
  2. 在操作栏中选择属性
  3. 选择页面。
    • 要添加组,请单击添加并选择应用程序组交付组。(如果尚未创建任何应用程序组,则唯一条目是交付组。)然后选择一个或多个可用组。与应用程序不兼容或已与应用程序关联的组无法选择。
    • 要删除组,请选择一个或多个组,然后单击删除。如果删除组关联会导致应用程序不再与任何组关联,系统会提醒该应用程序将被删除。
    • 要更改组的优先级,请选择该组,然后单击编辑优先级。选择一个优先级值,然后单击确定
  4. 完成后,单击应用以应用更改并保持窗口打开,或者单击确定以应用更改并关闭窗口。

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

以下操作可用:

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

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

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

从交付组中删除应用程序

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

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

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

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

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

更改应用程序属性

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

要更改应用程序的属性:

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

在以下列表中,页面显示在括号中。

属性 页面
应用程序在 Citrix Workspace app 中显示的类别/文件夹 交付
命令行参数;请参阅将参数传递给已发布的应用程序 位置
应用程序可用的交付组和应用程序组
描述 标识
文件名扩展名和文件类型关联:应用程序自动打开哪些扩展名 文件类型关联
图标 交付
StoreFront™ 的关键字 标识
限制;请参阅配置应用程序限制 交付
名称:用户和管理员看到的名称 标识
可执行文件路径;请参阅将参数传递给已发布的应用程序 位置
用户桌面上的快捷方式:启用或禁用 交付
可见性:限制哪些用户可以在 Citrix Workspace app 中看到应用程序。即使是不可见的应用程序也可以启动。要使其不可用且不可见,请将其添加到不同的组。 限制可见性
工作目录 位置

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

配置应用程序限制

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

此功能限制由 Controller 代理的应用程序启动数量(例如,来自 Citrix Workspace app 和 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 实例的限制。)

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

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

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

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

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

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

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

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

  • 在 PowerShell 中(使用适用于 Citrix Cloud™ 部署的远程 PowerShell SDK 或适用于本地部署的 PowerShell SDK),输入带有 MaxPerMachineInstances 参数的相应 BrokerApplication cmdlet。
  • 有关指导,请使用 Get-Help cmdlet。例如:

Get-Help Set-BrokerApplication –Parameter MaxPerMachineInstances

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

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

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

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

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

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

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

注意:

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

解决已发布的应用程序的会话注销问题

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

在这种情况下,您需要使用 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 下启动远程注册表服务:

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

    3. 右键单击 远程注册表服务,然后选择 属性

    4. 启动类型 下,从下拉菜单中选择 自动

    已发布的应用程序注册表

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

    1. 在“控制面板”中,选择 “Windows Defender 防火墙”>“高级设置”

    2. 右键单击 入站规则,然后选择 新建规则

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

    4. “协议和端口” 页面上,选择 TCP 和特定本地端口。输入 445 作为本地端口。

    5. “操作” 页面上,选择 允许连接

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

    7. 命名防火墙规则,然后选择 完成 以退出 “新建入站规则向导”

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

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

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

  3. 输入测试 VDA 的 IP 地址,然后单击 确定regedit 树必须显示测试 VDA 的分支。

    已发布的应用程序 regedit

  4. 打开已发布的 “命令提示符” 应用程序。

    已发布的应用程序管理

    “命令提示符” 应用程序显示在 Citrix Workspace 上。

    已发布的应用程序命令提示符

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

    已发布的应用程序连接

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

    注意:

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

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

    注意:

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

    已发布的应用程序 2

  8. 单击右上角的 X 以退出 Seamless CMD

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

    正常注销

  10. 如果会话未关闭,请按 F5 刷新 regedit 输出。

  11. 再次检查 LogoffCheckBlockingProcessLogoffCheckerBlockingVisibleProcess 的内容。CMD 不应再出现,但应列出另一个进程。当前阻止会话注销的任何进程都必须在此处显示。

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

    注册表编辑器

  12. 记下此可执行文件的路径以及它出现在哪个注册表项中,并将其输入到以下注册表项中,在远程树下:

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

    注意:

    如果该注册表项中已有一个或多个条目,请在末尾添加一个逗号,并将新条目放在逗号后面。

    注册表编辑器 - 最终

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

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

    注意:

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

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

LogonUI 窗口缩放已改进,适用于未发生身份验证直通的场景。LogonUI 窗口根据所使用的显示器分辨率和 DPI 设置进行缩放,这可确保完整的 LogonUI 窗口可见且不被裁剪。

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

  1. 在“运行”命令上使用 regedit 打开 注册表编辑器

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

  3. 创建两个新的 DWORD 注册表项:LogonUIWidthLogonUIHeight

  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 中的操作栏执行操作。或者,您可以使用右键单击菜单或拖动项目。例如,如果您在不希望的位置创建或移动了文件夹,则可以将其拖放至正确的位置。
  • Web Studio 中的所有节点(例如 Machine CatalogsDelivery GroupsApplicationsApplication 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 启动

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

New-BrokerApplicationSet-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、Citrix Receiver for Windows 4.11 和 Delivery Controller 7.17。