WTSUSERCONFIGA 结构 (wtsapi32.h)

包含域控制器或远程桌面会话主机 (RD 会话主机) 服务器上的用户的配置信息。 WTSQueryUserConfigWTSSetUserConfig 函数使用此结构。

语法

typedef struct _WTSUSERCONFIGA {
  DWORD Source;
  DWORD InheritInitialProgram;
  DWORD AllowLogonTerminalServer;
  DWORD TimeoutSettingsConnections;
  DWORD TimeoutSettingsDisconnections;
  DWORD TimeoutSettingsIdle;
  DWORD DeviceClientDrives;
  DWORD DeviceClientPrinters;
  DWORD ClientDefaultPrinter;
  DWORD BrokenTimeoutSettings;
  DWORD ReconnectSettings;
  DWORD ShadowingSettings;
  DWORD TerminalServerRemoteHomeDir;
  CHAR  InitialProgram[MAX_PATH + 1];
  CHAR  WorkDirectory[MAX_PATH + 1];
  CHAR  TerminalServerProfilePath[MAX_PATH + 1];
  CHAR  TerminalServerHomeDir[MAX_PATH + 1];
  CHAR  TerminalServerHomeDirDrive[WTS_DRIVE_LENGTH + 1];
} WTSUSERCONFIGA, *PWTSUSERCONFIGA;

成员

Source

WTS_CONFIG_SOURCE 枚举类型的值,该值指定 WTSQueryUserConfig 函数返回的配置信息的来源。

InheritInitialProgram

一个 值,该值指示客户端是否可以指定初始程序。 此成员可以是以下值之一。

0

客户端无法指定初始程序。 相反,当用户登录到服务器时, 由 InitialProgram 成员指定的程序会自动启动。 当用户退出该程序时,服务器会注销用户。

1

客户端可以指定初始程序。

AllowLogonTerminalServer

一个 值,该值指示是否允许用户帐户登录到 RD 会话主机服务器。 此成员可以是以下值之一。

0

用户无法登录。

1

用户可以登录。

TimeoutSettingsConnections

最大连接持续时间(以毫秒为单位)。 在连接过期前一分钟,服务器会通知用户挂起的断开连接。 连接超时时,服务器将执行 BrokenTimeoutSettings 成员指定的操作。 每次用户登录时,计时器都会重置。 如果值为零,则表示连接计时器已禁用。

TimeoutSettingsDisconnections

服务器在终止登录前保留断开连接的会话的最大持续时间(以毫秒为单位)。 如果值为零,则表示断开连接计时器已禁用。

TimeoutSettingsIdle

连接可以保持空闲状态的时间量(以毫秒为单位)。 如果在此期间没有键盘或鼠标活动,服务器将执行 BrokenTimeoutSettings 成员指定的操作。 值为零表示已禁用空闲计时器。

DeviceClientDrives

此成员是保留的。

DeviceClientPrinters

一个 值,该值指示当用户登录到服务器时,服务器是否自动连接到以前映射的客户端打印机。 此成员可以是以下值之一。

0

服务器不会自动连接到以前映射的客户端打印机。

1

服务器自动连接到以前映射的客户端打印机。

ClientDefaultPrinter

一个 值,该值指示客户端打印机是否为默认打印机。 此成员可以是以下值之一。

0

客户端打印机不是默认打印机。

1

客户端打印机是默认打印机。

BrokenTimeoutSettings

当连接或空闲计时器过期或连接因连接错误而丢失时,服务器采取的操作。 此成员可以是以下值之一。

0

会话已断开连接,但它保留在服务器上。

1

会话终止。

ReconnectSettings

一个 值,该值指示如何为此用户重新连接断开连接的会话。 此成员可以是以下值之一。

0

用户可以登录到任何客户端计算机以重新连接到断开连接的会话。

1

用户必须登录到最初用于建立断开连接的会话的客户端计算机。 如果用户登录到其他客户端计算机,则用户将获得新会话。

ShadowingSettings

远程控制设置。 远程控制允许用户远程监视其他用户的屏幕操作。 此成员可以是以下值之一。

0

远程控制已禁用。

1

远程控制的用户拥有对用户会话的完全控制,并具有用户的权限。

2

远程控制的用户对用户的会话具有完全控制权;不需要用户的权限。

3

远程控制用户可以在具有用户权限的情况下远程查看会话;远程用户无法主动控制会话。

4

远程控制用户可以远程查看会话,但不能主动控制会话;不需要用户的权限。

TerminalServerRemoteHomeDir

一个 值,该值指示 TerminalServerHomeDir 成员是包含本地目录还是网络共享的路径。 不能使用 WTSSetUserConfig 函数设置此成员。 此成员可以是以下值之一。

0

TerminalServerHomeDir 成员包含本地目录的路径。

1

TerminalServerHomeDir 成员包含网络共享的路径,TerminalServerHomeDirDrive 成员包含此路径映射到的驱动器号。

InitialProgram[MAX_PATH + 1]

一个以 null 结尾的字符串,其中包含在用户登录到服务器后立即启动的程序的名称。

WorkDirectory[MAX_PATH + 1]

一个以 null 结尾的字符串,包含初始程序的工作目录的路径。

TerminalServerProfilePath[MAX_PATH + 1]

一个以 null 结尾的字符串,包含当用户连接到服务器时分配给用户的配置文件路径。 路径指定的目录必须手动创建,并且必须在登录之前存在。

TerminalServerHomeDir[MAX_PATH + 1]

一个以 null 结尾的字符串,其中包含用户远程桌面服务会话的主文件夹的路径。 该文件夹可以是本地文件夹或网络共享。

TerminalServerHomeDirDrive[WTS_DRIVE_LENGTH + 1]

一个以 null 结尾的字符串,包含驱动器名 (驱动器号,后跟一个冒号) TerminalServerHomeDir 成员中指定的路径映射到该字符串。 仅当 TerminalServerRemoteHomeDir 成员设置为 1 时,此成员才有效。

注解

注意

wtsapi32.h 标头将 WTSUSERCONFIG 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows 7
最低受支持的服务器 Windows Server 2008 R2
标头 wtsapi32.h

另请参阅

WTSQueryUserConfig

WTSSetUserConfig

WTS_CONFIG_SOURCE