我有一个项目正在做,它为mstsclib.dll添加了一层跟踪和报告。一个新的要求是允许影子会话,以便我们的 IT 人员可以连接到虚拟机并观察其他人的工作,以便我们可以对他们正在做的事情进行故障排除,而无需与他们一起在房间里。我已经浏览了所有高级设置,找不到任何看起来会有所帮助的内容。唯一看起来远程相关的是
rdpClient.AdvancedSettings7.ConnectToAdministerServer = true
但这只连接到控制台会话,不允许我看到用户在做什么。
我是否缺少某些设置,或者解决方案是否比单个设置更复杂?
这是 rdpClient 的代码
public class AxMSRDPClient : AxMSTSCLib.AxMsRdpClient7
{
public string _desiredResolution;
public string _name;
public int _id;
public AxMSRDPClient()
: base()
{
}
protected override void WndProc(ref System.Windows.Forms.Message m)
{
//this corrects the Tabbing issue.
if (m.Msg == 0x0021)
{
this.Focus();
}
base.WndProc(ref m);
}
}
几乎所有关于影子会话的研究都只是发现了如何从 mstsc 完成它.exe而不是如何从 dll 完成它。
据我所知,没有办法从客户端影子会话。在服务器上,您可以调用 WTSStartRemoteControlSession(或 Cassia 库中的等效项:ITerminalServicesSession.StartRemoteControl)来隐藏会话。