在使用已发布的应用程序时,您可以使用 Unity 筛选器规则列表代理组策略设置来筛选 Unity 窗口,或将 Unity 窗口映射到特定类型。如果您遇到窗口显示问题(例如窗口中出现黑色背景,或下拉窗口的大小不正确),则此功能非常有用。

Unity 筛选器规则列表组策略设置在 VMware View Agent 配置 ADMX 模板文件 (vdm_agent.admx) 中提供,该文件捆绑在 VMware-Horizon-Extras-Bundle-YYMM-x.x.x-yyyyyyyy.zip 文件中。有关安装说明,请参阅将 ADMX 模板文件添加到 Active Directory

启用 Unity 筛选器规则列表组策略设置时,需单击显示,并在文本框中键入一个筛选规则。筛选规则由特性和操作组成。如果指定 map 操作,则还必须包含类型。下表列出了可在筛选规则中使用的特性、操作和类型。

表 1. Unity 筛选器规则的特性、操作和类型
特性 操作 类型
classname、company、product、major、minor、build、revision、style block、map normal、panel、dialog、tooltip、splash、toolbar、dock、desktop、widget、combobox、startscreen、sidepanel、taskbar、metrofullscreen、metrodocked

窗口类名通常是首选的特性,例如 classname = CustomClassName。要进一步细化对具有相似类名的窗口的筛选,您可以使用 style 特性,以根据 Microsoft 窗口样式应用规则。如果您必须将规则限制到特定产品,则可以提供 companyproductmajorminorbuildrevision 特性。您可以在可执行文件的属性窗口中找到这些特性的值。

这些特性(classname 除外)的值必须精确匹配大小写,包括任何特殊字符。如果提供多个特性,则所有值都必须匹配,才能将规则应用到窗口。

除了支持大小写精确匹配之外,classname 特性还支持正则表达式 (regex) 匹配。

要指定某个操作,需键入 action=value,例如 action=blockblock 操作告知 Horizon Agent 不要在客户端上显示窗口。当客户端上的窗口显示过大或干扰正常的窗口焦点行为时,请使用 block 操作。

map 操作(例如 action=map)告知 Horizon Agent 将窗口视为某种经过硬编码的类型。要指定类型,您必须在规则中包含 type=value,例如 type=normal。由于很难确定窗口是否映射到错误的类型,因此,只有在 VMware 技术支持团队指示您将窗口映射到某个类型时,您才需要这样做。

筛选规则示例

以下筛选规则会阻止所有类名为“MyClassName”的窗口。

classname=MyClassName;action=block

以下筛选规则会阻止名为“MyProduct”的产品中的所有窗口。

product=MyProduct;action=block

以下筛选规则会将自定义类映射到组合框类型。

classname=MyClassName;action=map;type=combobox
注: 与在 RDS 主机上的 %ProgramData%\VMware\RdeServer\Unity Filters 目录内的文件中指定的筛选规则相比, Unity 筛选器规则列表组策略设置具有较低优先级。