没有用户名和密码的远程桌面连接

时间:2016-10-03 04:48:06

标签: c# remote-desktop mstsc

我想使用没有用户名和密码的mstsc.exe连接到远程计算机。因为我想在没有用户名和密码的情况下连接它,所以它应该与锁定会话状态连接。

所以我想要这样的东西,

  1. 用户将输入IP地址并点击连接按钮。
  2. 机器应与锁定状态连接。
  3. 我已经尝试过以下代码,但它没有用。

            Process rdcProcess = new Process();
            rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\mstsc.exe");
            rdcProcess.StartInfo.Arguments = "/v " + "123.0.0.1 /public"; // ip or name of computer to connect
            rdcProcess.Start();
    

    用户是否可以使用C#进行此操作?

    由于

    -Sanket

1 个答案:

答案 0 :(得分:0)

这是不可能的 - 出于显而易见的原因,Microsoft Windows中的远程桌面服务器不允许未经身份验证的传入连接。没有设置密码的用户帐户无法登录到远程桌面,也没有允许匿名身份验证的配置选项。

作为替代方案,我建议使用VNC服务器,它的工作方式不同(它共享VNC服务器启动的会话并镜像会话的帧缓冲,而不是真正的远程桌面会话,它与其他会话并使用GDI重定向)。您可以将VNC服务器配置为不需要密码来连接,但当然强烈建议不要这样做。

但是,我不知道任何VNC服务器只允许最多1个连接并阻止辅助连接,但由于几乎整个VNC生态系统都是开源的,您可以修改现有服务器以表现方式你想要它。一种可能性是在没有密码的情况下设置VNC服务器,然后一旦用户连接它就设置新的随机生成的密码,从而阻止其他客户端连接。它会在当前客户端断开连接时清除密码。