最近学校放假,需要在家里远程访问学校的电脑,可反向代理只支持80端口,无奈啊,只能使用windows的web远程桌面,通过添加新组件装好“远程桌面web连接后”,在浏览器通过反向代理就能看到登录界面了,可是,我本机的远程桌面端口不是3389,我改成了另一个端口,可web远程桌面不支持输入端口号,也就是说不认识:后面的端口,我看了一下tsweb的默认页面“default.htm”,发现没有解析端口好的代码,需要在“sub BtnConnect”这个函数中添加一段程序就可以了:
Dim serverPort
'serverPort服务器的端口号
if InStr(serverName,":")=0 then
'如果没有输入端口
Port=3389
else
Dim arr
arr = Split(serverName,":")
serverName = arr(0)
serverPort= arr(1)
end if
‘add by liukun 以上是解析:后的端口号
最后,把serverPort赋值给MsRdpClient.AdvancedSettings2.RDPPort就可以了,大概在:
'Device redirection options
MsRdpClient.AdvancedSettings2.RedirectDrives = FALSE
MsRdpClient.AdvancedSettings2.RedirectPrinters = TRUE
MsRdpClient.AdvancedSettings2.RedirectPorts = FALSE
MsRdpClient.AdvancedSettings2.RedirectSmartCards = FALSE
'add by liukun serverport
MsRdpClient.AdvancedSettings2.RDPPort = serverPort
这样就可以在web远程桌面中使用端口号了。
修改后的default.htm中“sub BtnConnect“ 如下:
sub BtnConnect
Dim serverName
'server
if not Document.all.Server.value = "" then
serverName = Document.all.Server.value
else
serverName = Document.location.hostname
end if
'以下由刘鹍2010年1月27日添加
Dim Port
'Port
if InStr(serverName,":")=0 then
'没有输入端口
Port=3389
else
Dim arr
arr = Split(serverName,":")
serverName = arr(0)
Port = arr(1)
end if
'end by liukun
serverName = trim(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
'add by liukun serverport
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
由于csdn最近关闭了图片上传,所以截图不能给大家了,如有问题,单独交流,呵呵。