WTSUSERCONFIGA 结构 (wtsapi32.h)
包含域控制器或远程桌面会话主机(RD 会话主机)服务器上的用户的配置信息。 WTSQueryUserConfig 和 WTSSetUserConfig 函数使用此结构。
语法
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 成员设置为一个时,此成员才有效。
言论
注意
wtsapi32.h 标头将 WTSUSERCONFIG 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 7 |
支持的最低服务器 | Windows Server 2008 R2 |
标头 | wtsapi32.h |