2010-03-16 114 views
3

我是一位經驗豐富的Delphi開發人員,希望創建類似無縫終端服務的應用程序在服務器上執行但出現在客戶端桌面上。仿真終端服務

對於在服務器上工作的人,我不希望他們看到正在運行的遠程應用程序(除非他們查看正在運行的進程列表)。

我失去了如何去做這件事,從哪裏開始,如何讓應用程序渲染到服務器桌面以外的表面。

任何建議將不勝感激。

+3

我建議你看看任何衆多的開源VNC服務器和客戶端,但是如果你想編寫自己的程序,我假設你已經考慮過它們並拒絕它們;你介意分享一下你爲什麼不適合你的需求的原因嗎? – 2010-03-16 04:51:09

+0

嗨,這是一個很好的建議,我沒有考慮過看開源代碼,但那可能是我應該做的。我仍然想寫我自己的,而不是使用開源產品,因爲它有一種學習體驗。 – cloudstrif3 2010-03-17 00:00:01

回答

3

從2008年開始終端服務(已重新命名爲遠程桌面服務)提供的RemoteApps完全符合您的描述。 Citrix(XenApp)可以在所有的Windows(服務器)版本上執行此操作。所以你可能希望在決定自己重新創建它們之前先看看這些產品。

如果你決定去,這link可能是有趣的,這就是所謂的一個樣本項目從你所描述的「擴展微軟終端服務客戶端提供無縫的Windows」

+0

感謝您的鏈接,我想創建自己的應用程序,只是因爲購買現有的這樣做的成本,我只需要非常基本的功能。 您提供的鏈接正是我希望達到的目標,但它取決於使用Microsoft的RDP協議。我想避免許可問題,並且需要終端用戶在他們可以使用我的應用程序之前安裝終端服務。但這確實給了我一個出發點。 – cloudstrif3 2010-03-16 23:54:38

1

,我會說,你應該在編寫Windows服務(不是終端服務)並使用進程間通信(IPC)系統將狀態信息發送到可由相應用戶運行的「客戶端」應用程序(無論是在同一臺機器上還是另一臺機器上)通過網絡。

我自己,我正是這樣使用RemObjects SDK這使得我的客戶端應用程序看起來只是進行函數調用,但實際上他們去實現它們的服務器。然後,服務器可以在一個(或多個)線程中開始工作,並且所有用戶界面都在客戶端完成,該客戶端使用IPC通道找出要顯示的內容。