2011-06-22 94 views
10

我有一個桌面應用程序,它具有一個在Qt中製作的UI界面,並與正在執行所有計算任務的庫鏈接。從UI獲取值並傳遞給DLL中的API以獲取屏幕上顯示的輸出。在網頁上託管一個C++桌面應用程序

現在我想通過將我的應用程序用戶界面轉到網頁來做同樣的事情,以便人們可以從任何地方訪問該工具而無需任何安裝過程。

我想保留我的C++ DLL代碼,所以我不必做很多工作。我想通過任何通信過程(套接字)將此DLL轉換爲C++服務器。我想在我公司的網站上託管這個應用程序。 (我們必須製作網站,所以我們對任何一套工具都是開放的)。

我想知道什麼是最好的工具來做這件事。網頁和服務器之間也會有很多數據交換,所以應該優化整個事情。我暈了一下,找到了Silverlight和ASP.NET之類的東西,但我還不是很清楚哪個選項會更合適。

我是一個沒有Web應用程序開發經驗的C++程序員。我願意學習任何新技術。

謝謝

+0

考慮在雲服務器上託管應用程序並按需擴展。這應該相當便宜;您可以將它與Citrix /終端服務器(如unix上的XDM)一起使用(FreeNX或VNC)。我相信Azureus會有很好的產品 – sehe

+0

Silverlight 5可能會有所幫助,但我不知道他們是否允許在XAP打包的庫上使用P/Invoke。否則,Silverlight不是您正在尋找的技術。 – Denis

回答

1

爲什麼不直接在網上使用Qt?有幾個像這樣的項目:http://qtwui.sourceforge.net/

+1

這看起來很不成熟。 [谷歌齒輪](http://gears.google.com)或[睡衣](http:// pyjs。org)似乎更加適合這項工作;也就是說,如果Flex/Silverlight由於某種原因不適用 – sehe

+0

@sehe它只是其中的一個,我沒有將它們加入書籤,但我看到了幾個看起來非常有用的東西。在新框架中重寫應用程序通常會導致更多的問題,即不成熟的框架。 –

+0

這甚至忘記這是OP的問題:) – sehe

0

有一個netscape plugin將在QT網站上託管QT應用程序和ActiveX control wrapper。你可以使用其中的一個來包裝你的應用程序。請注意,這種方法需要用戶(或其管理員)下載並安裝插件。

另一種方法可能是通過遠程桌面(如XVNC,NX或基於RDP的圖層)運行應用程序。基於IIRC瀏覽器的遠程桌面客戶端可用於大多數此類協議。

0

有幾個選項:

我不會在互聯網上公開實施。足夠有一個簡單的緩衝區溢出和機器可以迅速接管。在應用程序和網絡之間添加一個圖層提供了一種簡單的方法來驗證輸入,訪問,統計...

0

您應該可以使用您的DLL從wtcppcms應用程序。然後,你不必學習新的東西,只需使用C++。

+0

我也檢查wt昨天,發現它很不錯。我會先嚐試這個。 – Maverick

0

我現在正在做這件事的方式是使用Boost.Python + django

相關問題