以编程方式登录10个用户到远程桌面会话

本文关键字:程桌面 桌面 会话 方式 编程 登录 10个 用户 | 更新日期: 2023-09-27 18:04:11

我正在尝试创建一个应用程序,将使用RDP以编程方式登录10个用户。这样做的目的是自动登录这些用户,这样就不必手动登录了。我测试的第一个服务器(server 2012)工作得很好。然而,我尝试了一台Server 2008 R2,它仍然提示我输入密码。代码如下:

    static void Main(string[] args)
    {
        var password = ConfigurationManager.AppSettings["Password"];
        var machine = ConfigurationManager.AppSettings["MachineName"];
        var userNameList = new List<string>(ConfigurationManager.AppSettings["UserName"].Split(new char[] { ';' }));
        foreach(string name in userNameList)
        {
            Process rdpProcess = new Process();
            rdpProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%'system32'cmdkey.exe");
            rdpProcess.StartInfo.Arguments = "/generic:TERMSRV/" + machine + "/user:" + name + " /pass:" + password;
            rdpProcess.Start();
            rdpProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%'system32'mstsc.exe");
            rdpProcess.StartInfo.Arguments = "/v " + machine;
            rdpProcess.Start();
            Thread.Sleep(3000);
        }
    }

我添加了睡眠,因为连接来得太快,我得到"连接繁忙"错误。

有人能看出我做错了什么吗?

以编程方式登录10个用户到远程桌面会话

我真的不知道为什么会这样,但是我2008年的服务器不能使用FQDN。不过,IP工作得很好。无论. .