

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在流式传输会话开始前运行脚本
<a name="run-scripts-before-streaming-sessions-begin"></a>

您可以将脚本配置为在用户的应用程序启动和其流式传输会话开始前运行最多 60 秒。这样，您就可以在用户开始流式传输其 WorkSpaces 应用程序之前自定义应用程序环境。在会话脚本运行时，会为您的用户显示加载转盘。当您的脚本成功完成或超过最长等待时间时，用户的流式传输会话将开始。如果脚本未成功完成，则会为用户显示错误消息。但是，不会阻止您的用户使用其流式传输会话。

在指定 Windows 实例上的文件名时，您必须使用双反斜杠。例如：

C:\$1\$1Scripts\$1\$1Myscript.bat

如果未使用双反斜杠，则会显示一个错误以通知您 .json 文件格式不正确。

**注意**  
脚本成功完成后，它们必须返回值 0。如果您的脚本返回的值不是 0，则 WorkSpaces 应用程序会向用户显示错误消息。

当您在流式传输会话开始之前运行脚本并且未启用 WorkSpaces 应用程序动态应用程序框架时，会发生以下过程：

![\[WorkSpaces Applications workflow diagram showing connection, application selection, and session launch steps.\]](http://docs.aws.amazon.com/zh_cn/appstream2/latest/developerguide/images/session-scripts-without-DAF-non-domain-joined2.png)


1. 您的用户连接到未加入域的 WorkSpaces 应用程序队列实例。他们使用下列访问方法之一进行连接：
   + WorkSpaces 应用程序用户池
   + SAML 2.0
   + WorkSpaces 应用程序 API

1. 应用程序目录显示在 WorkSpaces 应用程序门户中，您的用户可以选择要启动的应用程序。

1. 发生下列情况之一：
   + 如果为用户启用了应用程序设置持久性，则会下载并装入用于存储用户的自定义项和 Windows 设置的应用程序设置虚拟硬盘 (VHD) 文件。在此情况下，需要 Windows 用户登录。

     有关应用程序设置持久性的信息，请参阅[为应用程序用户启用 WorkSpaces 应用程序设置持久性](app-settings-persistence.md)。
   + 如果未启用应用程序设置持久性，则表示 Windows 用户已登录。

1. 您的会话脚本启动。如果为用户启用了持久性存储，则还会启动存储连接器安装。有关持久性存储的信息，请参阅[为 WorkSpaces 应用程序用户启用和管理永久存储](persistent-storage.md)。
**注意**  
无需完成存储连接器安装即可启动流式传输会话。如果会话脚本在存储连接器安装完成之前完成，则流式传输会话将启动。  
有关监控存储连接器的装载状态的信息，请参阅[将存储连接器与会话脚本结合使用](use-storage-connectors-with-session-scripts.md)。

1. 您的会话脚本完成或超时。

1. 用户的流式传输会话启动。

1. 用户选择的应用程序启动。

有关 WorkSpaces 应用程序动态应用程序框架的信息，请参见[使用 WorkSpaces 应用程序动态应用程序框架构建动态应用程序提供程序](build-dynamic-app-provider.md)。

当您在流式传输会话开始之前运行脚本并启用 WorkSpaces 应用程序动态应用程序框架时，会发生以下过程：

![\[WorkSpaces Applications workflow from user login to application launch, including SAML authentication and session scripts.\]](http://docs.aws.amazon.com/zh_cn/appstream2/latest/developerguide/images/session-scripts-with-DAF-domain-joined2.png)


1. 您的用户访问您组织的 SAML 2.0 应用程序门户，然后选择 WorkSpaces 应用程序堆栈。

1. 它们连接到已加入域的 WorkSpaces 应用程序队列实例。

1. 如果为用户启用了应用程序设置持久性，则会下载并装入用于存储用户的自定义项和 Windows 设置的应用程序设置 VHD 文件。

1. 发生 Windows 用户登录。

1. 应用程序目录显示在 WorkSpaces 应用程序门户中，您的用户可以选择要启动的应用程序。

1. 您的会话脚本启动。如果为用户启用了持久性存储，则还会启动存储连接器安装。
**注意**  
无需完成存储连接器安装即可启动流式传输会话。如果会话脚本在存储连接器安装完成之前完成，则流式传输会话将启动。  
有关监控存储连接器的装载状态的信息，请参阅[将存储连接器与会话脚本结合使用](use-storage-connectors-with-session-scripts.md)。

1. 您的会话脚本完成或超时。

1. 用户的流式传输会话启动。

1. 用户选择的应用程序启动。