18.7. 漫游办公

18.7.1. 漫游办公行为
18.7.2. 位置识别

本部分介绍漫游办公时可用于管理 Windows 会话的各种方法。

18.7.1. 漫游办公行为

您可使用 uttsc 命令指定当用户漫游办公到其他客户端时,Windows 会话将作何反应。可以使用 -H 选项设置该行为。

这些模式包括:

  • -H reconnect - 如果远程桌面服务器在 "Device Client Access License Mode"(设备客户端访问许可模式)中进行了配置,则远程桌面会话断开然后重新连接。用户可能需要重新输入凭证。这是默认模式。

  • -H nodisconnect - 远程桌面会话保持连接状态。以前为 -O 选项。

  • -H autoreconnect - 如果用户对其他 Sun Ray Client 进行漫游办公,则远程桌面服务器断开然后重新连接。用户无需重新输入凭证,而客户端名称和 IP 地址会在远程桌面服务器上进行更新。该选项要求启用自动重新连接功能。

18.7.2. 位置识别

位置识别是一种为 Windows 会话提供附加漫游办公功能的特性,它允许您:

  • 会话启动(甚至漫游办公)后在 Windows 会话中获取唯一客户端名称。在漫游办公期间会转发客户端名称。

  • 通过命令或脚本设置以下时期要在 Windows 会话中执行的操作:关联客户端会话在漫游办公期间断开连接和重新连接时。会话启动时也会执行为重新连接设置的操作。

注意

在 Windows 连接器上下文中,客户端名称为 Sun Ray Client 或 Oracle Virtual Desktop Client 的 ID(也称为 DTU ID)。

在某些情况下,有了此功能,则无需在 Sun Ray 服务器操作系统级别使用 utaction,例如设置跟随 (Follow-Me) 打印。

要启用此功能,您必须使用 Sun Ray Windows 组件安装程序在 Windows 系统上安装客户端信息代理,这在第 3.2.7 节 “如何在 Windows 系统上安装 Windows 连接器组件”中有介绍。安装后,默认情况下会启用位置识别,启动 Windows 会话时会自动使用位置识别。

18.7.2.1. 在 Windows 会话中获取客户端名称

位置识别功能允许您在会话启动(甚至漫游办公)后获取客户端的名称。客户端名称可用于各种配置方案。您可以通过以下方式获取客户端的名称:

  • %CLIENTNAME% 环境变量。

  • HKCU\Volatile Environment\CLIENTNAME 注册表项。

  • 在 Windows 桌面会话中使用 GetComputerName() 函数。

  • 在终端服务会话中使用 WTSSessionQueryInformation() 函数。

18.7.2.2. 为 Windows 会话设置操作

位置识别功能允许您设置以下时期要在 Windows 会话中执行的命令或脚本:关联客户端会话在漫游办公期间断开连接或重新连接时以及 Windows 会话启动时。为此,请以管理员身份为以下注册表项指定一个或多个注册表值,即 name=data 对:

对于 32 位系统
  • 对于会话断开连接-HKLM\Software\Oracle\Sun Ray\ClientInfoAgent\DisconnectActions

  • 对于会话重新连接和会话启动-HKLM\Software\Oracle\Sun Ray\ClientInfoAgent\ReconnectActions

对于 64 位系统
  • 对于会话断开连接-HKLM\Software\Wow6432Node\Oracle\Sun Ray\ClientInfoAgent\DisconnectActions

  • 对于会话重新连接和会话启动-HKLM\Software\Wow6432Node\Oracle\Sun Ray\ClientInfoAgent\ReconnectActions

小心

在修改注册表项之前,务必在 Windows 系统上备份注册表。

下面是上述注册表项的注册表值的一些示例,其中 Commandn 名称用于表示顺序。

Command1=notepad.exe
Command2=wscript.exe c:\tmp\myscript.vbs

data 值指定要执行的命令或脚本,您可以指定 "String" 或 REG_SZ 值类型。

对于可执行命令(例如 .exe 文件),您可以指定绝对路径。如果您不提供路径,则按照以下顺序搜索可执行文件:当前目录、Windows 系统目录、Windows 目录和 PATH 环境中的目录。

对于脚本,您应该指定要在解释器或 shell 中运行的脚本,脚本路径必须为绝对路径。例如 cmd.exe /c c:\foo\script.batwscript.exe c:\foo\script2.vbs