程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 工具推薦:如何部署使用“遠程桌面Web連接”,並且擴展它,可以連接非3389端口的遠程桌面,(服務器管理員必備)

工具推薦:如何部署使用“遠程桌面Web連接”,並且擴展它,可以連接非3389端口的遠程桌面,(服務器管理員必備)

編輯:.NET實例教程

你用過遠程桌面連接嗎?
  我相信很多人都用過了,遠程桌面現在可以用在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了。
/Files/cleo/default.htm
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved