C++ WTS连接会话

C++ WTS连接会话,c++,winapi,wtsapi32,C++,Winapi,Wtsapi32,我正在尝试使用此功能连接到特定的用户会话。我已尝试了所有操作,但函数总是失败,请求的会话访问被拒绝。ERROR\u ACCESS\u DENIED5(0x5)访问被拒绝或ERROR\u CTX\u WINSTATION\u ACCESS\u DENIED7045(0x1B85)。甚至像这样硬编码会话ID和密码 WTSConnectSession(2, 1 ,TEXT("test1"),false); 是否有比使用此功能更好的启动用户会话的方法。我正在尝试实现快速用户切换,这是难题的最后一部分,

我正在尝试使用此功能连接到特定的用户会话。我已尝试了所有操作,但函数总是失败,请求的会话访问被拒绝。
ERROR\u ACCESS\u DENIED
5(0x5)访问被拒绝或
ERROR\u CTX\u WINSTATION\u ACCESS\u DENIED
7045(0x1B85)。甚至像这样硬编码会话ID和密码

WTSConnectSession(2, 1 ,TEXT("test1"),false);

是否有比使用此功能更好的启动用户会话的方法。我正在尝试实现快速用户切换,这是难题的最后一部分,即登录用户会话。谢谢。

您确定正在使用“远程桌面用户”组中的用户名(由
TargetLogonId
参数指定)进行连接吗

您可以使用

net localgroup "Remote Desktop users"
另一个选项是启用安全审核和分析安全事件日志。
它将告诉您
错误的确切根本原因\u CTX\u WINSTATION\u ACCESS\u DENIED

我已将所有用户添加到“远程桌面用户”组,但仍然一无所获。也许我需要澄清一下我到底想做什么。因此,我尝试实现一个自定义凭据提供程序,以便当用户离开该区域时,我断开他们登录的会话,当该用户接近时,我希望打开或仅连接到该用户特定的会话。我原以为
WTSConnectSession()
会奏效,但现在我又在猜测。有人做过类似的事情吗?你有没有想过?我正在尝试做类似的事情,努力寻找好的信息。