Skip to main content

2026 年 4 月 9 日

为启动会话脚本添加 Windows 注册表项

您必须在希望 Horizon 运行启动会话脚本的每个 Horizon 桌面虚拟机上添加 Windows 注册表项。

必备条件

  • 确认您配置启动会话脚本的路径仅可供系统帐户和本地管理员访问。有关更多信息,请参阅使用启动会话脚本的最佳做法
  • 确保您的启动会话脚本可快速运行。如果您在 Windows 注册表中设置了 WaitScriptsOnStartSession 值,则必须先完成启动会话脚本运行,然后 Horizon Agent 才能对连接代理发出的 StartSession 消息做出响应。有关更多信息,请参阅使用启动会话脚本的最佳做法

步骤

  1. 登录到 Horizon 8 桌面虚拟机。

  2. 在命令提示符中,键入 regedit 以启动 Windows 注册表编辑器。

  3. 导航到注册表。

  4. 将启动会话脚本的路径添加到注册表中。

    1. 在导航区域中,右键单击 ScriptEvents,选择新建 > ,然后创建一个名为 StartSession 的项。

    2. 在导航区域中,右键单击 StartSession,选择新建 > 字符串值,然后创建一个字符串值以标识要运行的启动会话脚本,例如,SampleScript

      要运行多个启动会话脚本,请在 StartSession 项下为每个脚本创建一个字符串值条目。您无法指定这些脚本的运行顺序。如果脚本必须按特定顺序运行,请从单个控制脚本调用它们。

    3. 在主题区域中,右键单击新字符串值条目,然后选择修改

    4. 数值数据文本框中,键入用于调用启动会话脚本的命令行,然后单击确定

      键入启动会话脚本及其所需的任何文件的完整路径。

  5. 在注册表中添加并激活启动会话值。

    1. 导航到 \Agent\Configuration

    2. 如果 Configuration 项不存在,请右键单击 Agent,选择新建 > ,然后创建该项。

    3. 在导航区域中,右键单击 Configuration,选择新建 > DWORD (32 位) 值,然后键入 RunScriptsOnStartSession

    4. 在主题区域中,右键单击新 DWORD 值条目,然后选择修改

    5. 数值数据文本框中,键入 1 以激活启动会话脚本,然后单击确定

      键入 0 可停用此功能。默认值为 0。

    6. 要使 Horizon Agent 延迟发送 StartSession 响应,请向 Configuration 项再添加一个名为 WaitScriptsOnStartSession 的 DWORD 值。

      如果 WaitScriptsOnStartSession 数据值为 1,则会使 Horizon Agent 延迟发送 StartSession 响应,并在脚本未完成时失败。值为 0 表示 Horizon Agent 不等待脚本完成或检查脚本退出代码就发送 StartSession 响应。默认值为 0。

  6. 设置一个注册表值以指定可防止脚本超时的超时值(以秒为单位,而不是分钟)。

    通过设置此以秒为单位的超时值,可以用秒作为单位来配置 View 脚本主机服务超时值。例如,如果将 View 脚本主机服务的超时值设置为 30 秒,可以确保在连接代理发生超时之前,启动会话脚本完成运行或者超时。

    1. 导航到 \ScriptEvents

    2. 添加名为 TimeoutsInMinutes 的 DWORD 值。

    3. 将数据值设置为 0。

  7. 要激活 View 脚本主机服务以使启动会话脚本超时,请设置超时值。

    1. 导航到 \ScriptEvents\StartSession

    2. 在主题区域中,右键单击 Default (@) 项,然后选择修改

    3. 数值数据文本框中,键入超时值,然后单击确定

      值为 0 表示未设置超时。

  8. 退出注册表编辑器,并重新启动系统。

此页面对您有帮助吗?

对本主题提供反馈

本主题对您有帮助吗?

请勿填写任何个人信息或机密信息。

正在生成链接…