远程桌面服务管理
借助远程桌面服务 API,可以枚举和管理远程桌面会话主机 (RD 会话主机) 服务器、客户端会话和进程。
若要检索域中所有 RD 会话主机服务器的名称,请调用 NetServerEnum 函数来枚举SV_TYPE_TERMINALSERVER类型的服务器。 若要打开特定 RD 会话主机服务器的句柄,请在调用 WTSOpenServer 函数时传递服务器名称。 使用完句柄后,通过调用 WTSCloseServer 函数释放它。
可以使用 WTSOpenServer 返回的句柄在服务器上执行以下操作。
函数 | 操作 |
---|---|
WTSDisconnectSession | 断开客户端与指定会话的连接。 会话保持活动状态,用户可以再次登录以连接到同一会话。 |
WTSEnumerateSessions | 返回指定 RD 会话主机服务器上的会话列表。 |
WTSEnumerateProcesses | 返回指定 RD 会话主机服务器上的进程列表。 |
WTSLogoffSession | 注销指定的会话。 |
WTSQuerySessionInformation | 返回有关指定 RD 会话主机服务器上的指定会话的信息。 |
WTSSendMessage | 显示客户端上指定会话的消息框。 |
WTSShutdownSystem | 关闭并选择性地重启指定的 RD 会话主机服务器。 |
WTSTerminateProcess | 终止指定 RD 会话主机服务器上的指定进程。 |
WTSVirtualChannelOpen | 打开指定虚拟通道的服务器端的句柄。 有关虚拟通道的详细信息,请参阅 使用远程桌面服务虚拟通道。 |
WTSWaitSystemEvent | 等待事件,例如创建客户端会话或登录到 RD 会话主机服务器的用户。 |
其中几个函数分配缓冲区以将信息返回到调用方。 使用完缓冲区后,通过调用 WTSFreeMemory 函数释放缓冲区。