今天和大家聊一聊如何實現乙個遠端桌面程式。
對於遠端桌面程式,相信大家一定有所了解。
常見的產品有teamviewer,向日葵,微軟遠端桌面,qq遠端桌面等等。
遠端桌面能夠在定位使用者問題,協助操作,遠端辦公上有非常便捷作用。
這裡我們就來自己實現乙個遠端桌面程式。
對於乙個遠端桌面程式,我們要解決的問題主要有三點:
這裡需要注意的點是第二點傳輸資料。
遠端桌面乙個重要的質量指標是實時性。需要控制端對被控制端的操作能夠及時得到響應。
試想一下,假如你在幫使用者遠端時,開啟乙個資料夾要3s之後才能在控制端看到結果,你的工作效率可想而知。
對於實時性的資料流傳輸,我們首先想到的就應該是udp+p2p的方式。
udp沒有tcp的握手連線和擁塞處理導致的延時問題。
p2p使用了最短鏈路進行資料通訊。
這裡推薦的解決方案是webrtc。
webrtc提供了高效的,流**資料的p2p通訊方法。幾乎是開箱即用。
確定webrtc之後,桌面客戶端就可以選擇electron。
electron基於chrome和node,能夠同時擁有webapi和呼叫系統原生的能力。
此外,electron自帶的desktopcapturerapi可以直接滿足我們獲取桌面流的需求。
我們還剩下乙個傳遞控制資訊的需求,即搭建乙個信令伺服器。
webrtc沒有指定信令伺服器的搭建方式,所以你願意可以選擇任何方式傳輸控制訊號,包括飛鴿傳書。
這裡我們選擇websocket。
主要考慮兩點:
遠端桌面程式的執行流程如上圖所示。
**示例可以參考我的github專案xinyuehtx/remoteview
本文會經常更新,請閱讀個人部落格原文: ,以避免陳舊錯誤知識的誤導,同時有更好的閱讀體驗。
遠端桌面 如何配置
當某台計算機開啟了遠端桌面連線功能後我們就可以在網路的另一端控制這台計算機了,通過遠端桌面功能我們可以實時的操作這台計算機,在上面安裝軟體,執行程式,所有的一切都好象是直接在該計算機上操作一樣。這就是遠端桌面的最大功能,通過該功能網路管理員可以在家中安全的控制單位的伺服器,而且由於該功能是系統內建的...
windows如何遠端桌面mac
mac遠端windows系統比較容易,但是windows遠端mac就相對複雜一點,需要借助第三方工具來實現。下面給出簡要的遠端步驟 1 登入mac,點選蘋果圖示,然後單擊 系統偏好設定.如下圖所示 2 在 系統偏好設定 介面中,單擊 共享 如下圖所示 3.在 共享 中勾選 螢幕共享 然後單擊 電腦設...
前些天的乙個問題(遠端桌面)
author zfive5 zhaozidong email zfive5 yahoo.com.cn 引子前些天乙個同事把我拉到他們那裡,讓我解決乙個問題,主要就遠端的時候得到客戶端是什麼,這樣的需求搞了半天也未果,特意在機器上裝了乙個遠端終端,一定要解決這個問題。開動.正文 如下 include ...