C# 怎么样调用Mstsc.exe进行远程桌面连接

.Net技术 码拜 8年前 (2016-09-24) 3674次浏览
  本人本人写了一个远程主机管理工具,用Microsoft RDP Client Control 控件可以实现远程桌面的访问,但是本人现在想,平时我们连接的时候是通过“远程桌面连接”也就是mstsc.exe这个程序,然后输入ip,用户名,密码再进行连接。因此也想通过C#来实现调用mstsc.exe连接桌面,原因是本人想要那种进入后默认全屏的效果,就是通过“远程桌面连接”进去后,在远程桌面的顶端有个可以自动以藏的横向小菜单的那种。百度了两天,发现资料比较少,唯一百度到的就是mstsc.exe实际上是执行的.rdp文件,但是调用电话本的前提是,提前连接过远程主机并且已经设置好了用户名,密码等。
说了上面那些,下面说说本人想要实现的功能,希望知道的朋友给点思路,最好给出例子或资料,不胜感激。
需求:通过调用mstsc.exe,动态的为其传IP,用户名,密码,端口,然后进行连接,说的直白一些,就把平时我们手工打开“远程桌面连接”,输入ip,用户名,密码,点击连接的这些操作,用代码来实现。并且不局限以前能否成功连接过此主机。只要我们有了IP,端口,用户名,密码,就能连接成功!
不知道本人描述的明白不清楚。谢谢大家。
解决方案

10

应该是能做,只不过会非常麻烦
原因是假如用户名密码已经记录到本地,再次打开的时候可以不提示输入用户名密码
而假如没有记录到本地,则会要求输入用户名密码
除非你先去修改它的文件,把用户名密码写进去(估计很难),否则只能模拟键盘填写用户名,回车,密码,回车

10


远程桌面连接用法

MSTSC [<连接文件>] [/v:<服务器[:端口]>] [/admin] [/f[ullscreen]] [/w:<宽度> /h:<高度>] [/public] | [/span] [/multimon] [/migrate] [/edit “连接文件”] [/restrictedAdmin] [/prompt]
“连接文件”– 指定用于连接的 .RDP 文件的名称。
/v:<服务器[:端口]> — 指定要连接到的远程计算机。
/admin — 将您连接到会话以管理服务器。
/f — 在全屏模式下启动远程桌面。
/w:<宽度> — 指定远程桌面窗口的宽度。
/h:<高度> — 指定远程桌面窗口的高度。
/public — 以公共模式运行远程桌面。
/span — 将远程桌面的宽度和高度与本地虚拟桌面相匹配,如有必要,可跨多个监视器进行扩展。若要跨多个监视器进行扩展,必须将监视器排列成一个矩形。
/multimon — 将远程桌面服务会话监视器布局配置为与当前的客户端配置相同。
/edit — 打开要进行编辑的指定 .RDP 连接文件。
/migrate — 将使用客户端连接管理器创建的旧版连接文件迁移到新的 .RDP 连接文件。

/restrictedAdmin — 在受限管理模式下将您连接到远程计算机或服务器。在此模式下,将不会向远程计算机或服务器发送凭据,这样可在您连接到的计算机已被攻击时为您提供保护。但是,从远程计算机建立的连接可能不会由其他远程电脑和服务器进行身份验证,这可能会影响应用的功能和兼容性。表示 /admin。
/prompt — 在您连接到远程计算机或服务器时提示您输入凭据。

确定

10

引用:
Quote: 引用:

应该是能做,只不过会非常麻烦
原因是假如用户名密码已经记录到本地,再次打开的时候可以不提示输入用户名密码
而假如没有记录到本地,则会要求输入用户名密码
除非你先去修改它的文件,把用户名密码写进去(估计很难),否则只能模拟键盘填写用户名,回车,密码,回车

本人见到过一个工具,他的也是一个管理工具,里面有“真实桌面”和“虚拟桌面”选项,假如选择真实桌面,就是调用的mstsc.exe那种模式的窗口,直接打开远程桌面了。

你确定它是调用的远程桌面,而不是本人实现了远程桌面功能?
查看下进程,启动的窗口到底是什么进程

10

一直木明白,什么是真是桌面,什么是虚拟桌面,能给个解释吗?
你看看这个文章是不是你想要的
https://social.msdn.microsoft.com/Forums/vstudio/zh-CN/83416a91-5d65-451e-98cb-1bddbac490a2/how-to-mstsc-with?forum=clr

10

C# 怎么样调用Mstsc.exe进行远程桌面连接
可能是自动生成的XXXX.rdp文件 然后自动连接吧.
本人觉得应该可以,,不信你把文件另存一个 然后使用cmd测试下就知道了..
别没测试就说不行不行….

10

还有个 简单但是比较麻烦的办法,,  就是先手动mstsc  远程电脑然后 保存rdp,  以后假如要连接其他服务器的时候修改rdp文件里面的 ip和账号,  密码就行了

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C# 怎么样调用Mstsc.exe进行远程桌面连接
喜欢 (0)
[1034331897@qq.com]
分享 (0)