复合 USB 设备包含两台或更多不同的设备,例如视频输入设备和存储设备或者麦克风和鼠标设备。如果您想允许一个或多个组件使用重定向功能,您可以将复合设备拆分为组件接口,禁止重定向特定接口,并允许重定向其他接口。

您可以设置一个自动拆分复合设备的策略。如果自动拆分设备功能对特定设备不起作用,或者如果自动拆分功能不生成应用程序所需的结果,您可以手动拆分复合设备。

自动设备拆分

如果启用了自动设备拆分功能,Horizon 将尝试根据生效的过滤器规则拆分复合设备中的功能或设备。例如,输入麦克风可能会自动拆分,以便鼠标设备仍作为设备的本地设备,其余的设备将转发至远程桌面。

下表介绍了Allow Auto Device Splitting设置的值如何确定 Horizon Client 是否尝试自动拆分复合 USB 设备。默认情况下禁用自动拆分。

表 1. 结合使用禁用自动拆分策略的影响
Horizon Agent 上允许自动设备拆分策略 Horizon Client 上允许自动设备拆分策略 结合使用有效的允许自动设备拆分策略
Allow - Default Client Setting false(禁用自动拆分) 禁用自动拆分
Allow - Default Client Setting true(启用自动拆分) 启用自动拆分
Allow - Default Client Setting 未定义 启用自动拆分
Allow - Override Client Setting 任意或未定义 启用自动拆分
未定义 未定义 禁用自动拆分
注: 这些策略包含在 Horizon Agent 配置 ADMX 模板文件中。ADMX 模板文件名为 ( vdm_agent.admx)。

默认情况下,Horizon 禁用自动拆分,并禁止重定向复合 USB 设备的任何音频输出设备、键盘、鼠标或智能卡组件。

Horizon 先应用设备拆分策略设置,然后再应用任何过滤策略设置。如果您已启用自动拆分并且没有通过指定供应商和产品 ID 来明确禁止拆分某一复合 USB 设备,Horizon 会检查复合 USB 设备的每个接口,并根据过滤策略设置确定应该排除或包含哪些接口。如果您已禁用自动设备拆分,并且没有明确指定要进行拆分的复合 USB 设备的供应商和产品 ID,则 Horizon 会将过滤策略应用到整个设备。

如果您启用了自动拆分,您可以使用Exclude Vid/Pid Device From Split策略来指定希望从拆分操作中排除的复合 USB 设备。

手动设备拆分

您可以使用Split Vid/Pid Device策略来指定希望拆分的复合 USB 设备的供应商和产品 ID。您还可以指定要从重定向操作中排除的复合 USB 设备组件的接口。Horizon 不会将任何过滤策略设置应用到您以此方式排除的组件中。

重要说明: 如果您使用 Split Vid/Pid Device策略, Horizon 不会自动包含您未明确排除的组件。您必须指定一个筛选策略(如 Include Vid/Pid Device)来包含这些组件。

Horizon Agent 上设备拆分策略设置的拆分修改符介绍了一些修改符,这些修改符可以指定当存在针对 Horizon Client 的等效设备拆分策略设置时,Horizon Client 将如何处理 Horizon Agent 设备拆分策略设置。这些修改符适用于所有设备拆分策略设置。

表 2. Horizon Agent 上设备拆分策略设置的拆分修改符
修改符 描述
m(合并) Horizon Client 设备拆分策略设置外,Horizon Client 还会应用 Horizon Agent 设备拆分策略设置。
o(覆盖) Horizon Client 使用 Horizon Agent 设备拆分策略设置,而不使用 Horizon Client 设备拆分策略设置。

将拆分修改符应用到设备拆分策略设置的示例举例说明了 Horizon Client 如何在您指定不同的拆分修改符时对Exclude Device From Split by Vendor/Product ID进行设置。

表 3. 将拆分修改符应用到设备拆分策略设置的示例
根据 Horizon Agent 上的供应商/产品 ID 将设备从拆分中排除 根据 Horizon Client 上的供应商/产品 ID 将设备从拆分中排除 根据 Horizon Client 所使用的供应商/产品 ID 策略设置有效地将设备从拆分中排除
m:vid-XXXX_pid-XXXX vid-YYYY_pid-YYYY vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY
o:vid-XXXX_pid-XXXX vid-YYYY_pid-YYYY vid-XXXX_pid-XXXX
m:vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY vid-YYYY_pid-YYYY vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY
o:vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY vid-YYYY_pid-YYYY vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY

Horizon Agent 不在其所在端的连接上应用设备拆分策略设置。

Horizon Client 根据以下优先级顺序评估设备拆分策略设置。
  • Exclude Vid/Pid Device From Split
  • Split Vid/Pid Device

将设备从拆分操作中排除的设备拆分策略优先于任何拆分设备的策略设置。如果您将接口或设备定义为从拆分中排除,则 Horizon Client 将禁止重定向匹配的组件设备用。

设置策略以拆分复合 USB 设备的示例

为桌面设置拆分策略,禁止具有特定供应商和产品 ID 的设备自动拆分后进行重定向,并将这些策略传递到客户端计算机:

  • 对于 Horizon Agent,请将 Allow Auto Device Splitting 策略设置为 Allow - Override Client Setting
  • 对于 Horizon Agent,请将 Exclude VidPid From Split 策略设置为 o:vid-xxx_pid-yyyy,其中 xxxyyyy 为适用的 ID。

允许桌面上的自动设备拆分功能,并在客户端计算机上为要拆分的特定设备指定策略:

  • 对于 Horizon Agent,请将 Allow Auto Device Splitting 策略设置为 Allow - Override Client Setting
  • 对于客户端设备,请将 Include Vid/Pid Device 过滤策略设置为包括要拆分的特定设备,例如 vid-0781_pid-554c
  • 对于客户端设备,请将 Split Vid/Pid Device 策略设置为 vid-0781_pid-554c(exintf:00;exintf:01)(举例说明),以拆分指定的复合 USB 设备并禁止重定向接口 00 和接口 01。