电脑网络 / Win Server · 2018年06月10号 0

工具推荐:如何部署使用“远程桌面Web连接”,并且扩展它,可以连接非3389端口的远程桌面,(服务器管理员必备)

你用过远程桌面连接吗?
我相信很多人都用过了,远程桌面现在可以用在Window Xp和Windows 2003 Server上面。而这两者都是会自己带有远程桌面连接,位置是:开始|所有程序|附件|通讯|远程桌面连接
你可以看到熟悉的界面:

自动草稿
但是,当本地不是Window Xp和Windows 2003 Server操作系统的时候,比如说是98系统的时候,你如何连接远程桌面呢?所以,有了下面的问题:

你用过远程桌面 Web 连接吗?
事实上,只要在一台服务器上部署这个东东,你就可以在任何有IE5以上的操作系统来连接远程桌面了。那么,How?

安装远程桌面 Web 连接

1. 打开“控制面板”中的“添加或删除程序”。
2. 单击“添加/删除 Windows 组件”。
3. 单击“应用程序服务器”,然后单击“详细信息”。
4. 选择“Internet 信息服务”,然后单击“详细信息”。
5. 在“Internet 信息服务的子组件”列表中,选择“万维网服务”,然后单击“详细信息”。
6. 在“万维网服务的子组件”列表中,单击“远程桌面 Web 连接”复选框。单击“确定”。再次单击“确定”,接着第三次单击“确定”。
7. 在“Windows 组件”向导中,单击“下一步”。
8. 验证在“连接类型:”框中选中 RDP-Tcp 连接,然后单击“下一步”开始安装“远程桌面 Web 连接”。

如何使用?

使用远程桌面 Web 连接连接到其他计算机

1. 确保在 Web 服务器上已经安装并运行“远程桌面 Web 连接”。
2. 确保客户端计算机有活动的网络连接,并且 DNS 服务器服务(或其他名称解析方法)正在工作。
3. 在客户端计算机上启动 Microsoft Internet Explorer。
4. 在“地址”框中,键入管理“远程桌面 Web 连接”的 Web 服务器的主目录统一资源定位符 (URL)。

URL 的格式为“http://”,后跟服务器的 Windows 网络名称,然后是包含“远程桌面 Web 连接”文件的目录路径(默认为 /Tsweb/)。(注意是正斜线标记。)例如,如果您的 Web 服务器在 WINS 服务器上注册为 “Admin1″,那么请在“地址”框中键入:http://admin1/tsweb/,然后按 Enter。“远程桌面 Web 连接”页出现在屏幕上。

5. 在“服务器”中,键入要连接的远程计算机的名称或 IP 地址。
6. 还可以为该连接指定屏幕大小和登录信息。
7. 还可以选中“发送该连接的登录信息”复选框,并键入用户名和域。
8. 单击“连接”。

注意

“远程桌面 Web 连接”要求使用 Internet Explorer 5 或更高版本。
如果正在连接的计算机不属于局域网,则您可能要指定该计算机的完全合格的域名。

一个问题是:如果不是标准的3389端口,该怎么连接呢?
我们知道,在非Web方式,可以直接在服务器名称后面加端口就可以比如:localhost:3389
我们在Web方式能不能呢?答案是,目前是不能的。
自动草稿
那么,有没有什么方法呢?
当然有,只要修改Web 页面Html文本就可以做到。

我查到资料:
有MsRdpClient.AdvancedSettings2.RDPPort 这么一个属性,所以,我们只要把服务器名称里面的端口部分拆分出来,单独赋值给这个属性就OK了。
通过观察代码,我们找到了sub BtnConnect这函数,加入这么一段:

   Dim Port
   ‘Port

   if InStr(serverName,”:”)=0 then
   ‘没有输入端口
      Port=3389
   else
      Dim arr
      arr = Split(serverName,”:”)
      serverName = arr(0)
      Port = arr(1)
   end if

还有赋值一段:

MsRdpClient.AdvancedSettings2.RDPPort = Port

最终修改完之后的函数完整代码是这样的:

 

sub BtnConnect
   Dim serverName
   ‘server
   if not Document.all.Server.value = “” then
      serverName = Document.all.Server.value
   else
      serverName = Document.location.hostname
   end if

   Dim Port
   ‘Port

   if InStr(serverName,”:”)=0 then
   ‘没有输入端口
      Port=3389
   else
      Dim arr
      arr = Split(serverName,”:”)
      serverName = arr(0)
      Port = arr(1)
   end if

   serverName = trim(serverName)

‘MsgBox(Port)
‘MsgBox(serverName )

   On Error Resume Next
   MsRdpClient.server = serverName
   If Err then
      msgbox L_InvalidServerName_ErrorMessage,0,L_RemoteDesktopCaption_ErrorMessage
      Err.Clear
      exit sub
   end if
   On Error Goto 0

   ‘serverName name text
   Document.all.srvNameField.innerHtml = serverName

   ‘Username/Domain
   if Document.all.CheckBoxAutoLogon.checked then
      MsRdpClient.UserName = Document.all.UserName.Value
      MsRdpClient.Domain = Document.all.Domain.Value
   end if

   ‘Resolution
   MsRdpClient.FullScreen = FALSE
   select case document.all.comboResolution.value
   case “1”
      MsRdpClient.FullScreen = TRUE
      resWidth  = screen.width
      resHeight = screen.height
   case “2”
      resWidth  = “640”
      resHeight = “480”
   case “3”
      resWidth  = “800”
      resHeight = “600”
   case “4”
      resWidth  = “1024”
      resHeight = “768”
   case “5”
      resWidth  = “1280”
      resHeight = “1024”
   case “6”
      resWidth  = “1600”
      resHeight = “1200”
   end select
   MsRdpClient.DesktopWidth = resWidth
   MsRdpClient.DesktopHeight = resHeight


   MsRdpClient.Width = resWidth
   MsRdpClient.Height = resHeight

   ‘Device redirection options
   MsRdpClient.AdvancedSettings2.RedirectDrives     = FALSE
   MsRdpClient.AdvancedSettings2.RedirectPrinters   = TRUE
   MsRdpClient.AdvancedSettings2.RedirectPorts      = FALSE
   MsRdpClient.AdvancedSettings2.RedirectSmartCards = FALSE

   MsRdpClient.AdvancedSettings2.RDPPort = Port

   ‘FullScreen title
   MsRdpClient.FullScreenTitle = L_FullScreenTitle_Text & “(” & serverName & “)”

   ‘Display connect region
   Document.all.loginArea.style.display = “none”
   Document.all.connectArea.style.display = “block”

   ‘Connect
   MsRdpClient.Connect
end sub

完工了,我把完工的页面也传给大家吧,只要替换该页面,就OK了。