FreeRDP使用,快速找出账户密码不正确的服务器地址

最近有个需求,需要找出服务器未统一设置账户密码的服务器,进行统一设置,一共有一百多台服务器,一个个远程登录看,那得都费劲啊,这时候就可以用到FreeRDP这个远程桌面协议工具,FreeRDP下载,根据自己的需要下载,我是windows10 64位系统就下载了个wfreerdp,下载好了之后就可以写代码了

cs 复制代码
            
            string wfreerdpExecutablePath = "wfreerdp.exe";

            string[] serverRecords = File.ReadAllLines("server.csv");

            foreach (string record in serverRecords)
            {
                string[] serverData = record.Split(',');

                if (serverData.Length != 3)
                {
                    continue;
                }

                string ipAddress = serverData[0];
                string userName = serverData[1];
                string userPassword = serverData[2];

                // 构建wfreerdp命令行参数
                string rdpArguments = $"/v:{ipAddress} /u:{userName} /p:{userPassword}";

                try
                {
                    ProcessStartInfo processInfo = new ProcessStartInfo(wfreerdpExecutablePath, rdpArguments);
                    processInfo.CreateNoWindow = true;
                    processInfo.UseShellExecute = false;

                    using (Process rdpProcess = Process.Start(processInfo))
                    {
                        rdpProcess.WaitForExit();

                        int exitCode = rdpProcess.ExitCode;

                        if (exitCode == 0)
                        {
                            Console.WriteLine($"{ipAddress}远程桌面连接成功启动");
                        }
                        else
                        {
                            Console.WriteLine($"{ipAddress}远程桌面连接失败,退出代码:{exitCode}");
                        }
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"{ipAddress}启动远程桌面时发生错误:{ex.Message}");
                }
            }

为了读取简单就搞了个csv文件,根据ip,账户,密码三个字段进行填写就好了,程序会啪嗒啪嗒地打开远程桌面,电脑配置不好的会卡,我的烂电脑就卡了,所以最好把服务器信息分批进行读取运行😂

相关推荐
ITMr.罗18 小时前
深入理解EF Core更新机制(开发中因为省事遇到的问题)
服务器·数据库·c#·.net
用户44884667106018 小时前
.NET进阶——深入理解委托(3)事件入门
c#·.net
武藤一雄1 天前
C# 万字拆解线程间通讯?
后端·微软·c#·.net·.netcore·多线程
lljss20201 天前
C# 定时器类实现1s定时器更新UI
开发语言·c#
白杨攻城狮1 天前
C# 关于 barierr 心得
开发语言·c#
江沉晚呤时1 天前
延迟加载(Lazy Loading)详解及在 C# 中的应用
java·开发语言·microsoft·c#
专注VB编程开发20年1 天前
C#用API添另静态路由表
c#·静态路由
我是唐青枫1 天前
C# Params Collections 详解:比 params T[] 更强大的新语法
c#·.net
Zhen (Evan) Wang1 天前
从客户端的HTTP 请求到后端 .NET 8 API的整个生命周期 - 处理请求和响应的主要方式
c#·.net
用户298698530141 天前
如何在 C# 中创建、读取和更新 Excel 文档
后端·c#·excel