ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

RDCMan 远程桌面连接管理器入门:一棵树管住所有 RDP 服务器

RDCMan 远程桌面连接管理器入门:一棵树管住所有 RDP 服务器 RDCMan 远程桌面连接管理器入门一棵树管住所有 RDP 服务器【免费下载链接】RDCManRemote Desktop Connection Manager (微软RDP远程桌面管理工具) reflect 汉化及本土化项目地址: https://gitcode.com/gh_mirrors/rd/RDCManRDCMan 是微软开源的远程桌面连接管理器这个仓库基于 2.92 版本的反射反编译源码补上了汉化与本土化改动。它把每台服务器单建连接、每次手填地址账号的重复劳动收进一棵支持配置继承的树里批量连接、批量断开、共享配置都从树上一个节点点下去。先跑起来代码加上两个运行前提先拿代码git clone https://gitcode.com/gh_mirrors/rd/RDCMan编译和运行都有硬性前提缺一样都起不来Windows 7 及以上系统目标架构 x64.NET Framework 4.8 运行时系统自带System32\mstscax.dllRDP 客户端控件版本越新越好仓库RdcLib/目录里已预置AxInterop.MSTSCLib.dll和Interop.MSTSCLib.dll两个互操作程序集直接编译 RdcMan/RDCMan.csproj 即可不需要自己再生成 interop 层用 Visual Studio 或 MSBuild 打开 RDCMan.sln 编译出RDCMan.exe就能运行。README 里说明了一个本土化取舍因为找不到支持 RdpClient10 的配套库这部分代码被注释掉了连接实际走 RDP 8/9 的控件接口。环境理顺之后再来看这份代码是怎么分工的后面讲功能时会不断回指这些路径。代码地图五个目录各管一段RDCMan/ ├── RdcMan/ # 主程序界面、树、节点、设置项 ├── RdcLib/ # RDP 客户端互操作程序集预编译 ├── RdcMan.Configuration/ # 解析 app.config 里的 rdcman 配置节 ├── RdcMan.Internal/ # 内置虚拟组功能未完成的半成品 ├── Win32/ # Win32 API 封装窗口、会话、加密等 └── Resources/ # 全部图标资源统一收口在此RdcMan/占大头一百多个文件里真正值得先认识的只有几个RdcMan/MainForm.cs 是主窗口RdcMan/ServerTree.cs 管整棵树RdcMan/Server.cs 和 RdcMan/Group.cs 是两类节点实体RdcMan/RdgFile.cs 负责.rdg配置文件的读写。Win32/里的 RdcMan/RemoteSessions.cs 同族文件用来枚举远端会话。看懂这张分工图后下面按三个真实任务过一遍用法。任务一建出你的服务器树让配置自动继承这一步你要做的事把服务器按环境分组通用参数只在组上配一次。在 RdcMan/Group.cs 和 RdcMan/GroupBase.cs 里组的属性颜色、显示设置、登录方式等挂在组节点上子节点读取时按 RdcMan/InheritanceMode.cs 定义的继承模式取值服务器没单独设置就沿用上级的值。所以给一批服务器统一改颜色深度这种操作落到父组一次编辑就够了不用逐台打开属性页。新建、改名、拖拽归组都在树右键菜单上完成菜单的组装逻辑集中在 RdcMan/MenuHelper.cs汉化版在 RdcMan/ServerTree.cs 的OnContextMenu里补了一个本土习惯右键点中已选中的服务器或组也能弹菜单不用先单击再右键。整棵树最终由RdgFile.cs序列化成一个.rdg文件备份和共享都以它为载体。任务二一次连上一整组再盯住每台机器的状态这一步你要做的事选中一个组把下面所有在线服务器批量拉起来并在一个窗口里看全部状态。树节点上发起连接后RdcMan/ClientPanel.cs 会把每台已连接的服务器渲染成一块缩略图面板按ServerTree的层级平铺。汉化版在这里加了两处交互未停靠独立窗口时双击服务器盒、以及面板内双击缩略图都会激活对应远程桌面到前台对应 RdcMan/ServerBox.cs 的OnMouseDown与DbClickShow。节点图标随状态切换连接中、已连接、已断开各有一套图标资源统一放在Resources/下。断开、重连同理走同一入口重连策略在 RdcMan/ReconnectServerOptions.cs 里配置掉线后自动重试的次数和间隔都在这里。连接面板解决了看接下来解决归位机器多了以后树不是手工维护得过来的。任务三用规则给服务器自动归位这一步你要做的事不手工拖节点让符合条件的服务器自动进组。RdcMan/SmartGroup.cs 实现智能组每个组挂一个 RdcMan/RuleGroup.cs组内由若干 RdcMan/Rule.cs 规则按与/或组合判断服务器属性名称、备注、显示名等。服务器属性变化时智能组通过订阅ServerTree的变更事件实时增删成员你不需要再手动整理。顺带一提凭证登录账号密码由 RdcMan/CredentialsUI.cs 编辑、RdcMan/Encryption.cs 加密后写进.rdg。汉化版把密码框的占位假字符逻辑移除了密码回显行为更符合国内使用习惯。功能过完剩下的是日常调参。常见问题的答案基本集中在下面这张表里。参数怎么调坑在哪使用场景建议调整项相关模块跨网段办公、带宽有限降低颜色深度关闭桌面背景与字体平滑RdcMan/DisplaySettingsTabPage.cs服务器上百台缩略图卡顿调大缩略图单元尺寸减少渲染块数控制同时连接数RdcMan/ClientPanel.cs频繁掉线开启并加长自动重连间隔与次数RdcMan/ReconnectServerOptions.cs保存配置报错检查.rdg所在目录写权限换到用户可写位置RdcMan/RdgFile.cs团队共享配置文件导出.rdg前开启凭证加密避免明文密码外泄RdcMan/Encryption.cs可选分辨率列表不够用直接改 app.config 中displaySizes节点RdcMan/DisplaySizeElement.cs还有一个容易忽略的点RdcMan.Internal/下的内置虚拟组在 README 中标注配置完成、功能未完成依赖它的行为不要写进生产流程。RDCMan 适合手里有十几台以上 Windows 服务器、且天天要用 RDP 的运维者和管理员如果你只是偶尔连一两台原生 mstsc 就够。下一步动作把现有开发环境的服务器按环境分三组录入配好组级登录参数导出第一份.rdg然后选中整组做一次批量连接验证继承是否按预期生效。【免费下载链接】RDCManRemote Desktop Connection Manager (微软RDP远程桌面管理工具) reflect 汉化及本土化项目地址: https://gitcode.com/gh_mirrors/rd/RDCMan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表