2012-11-14 61 views
1

我正在編寫一個桌面應用程序,該應用程序必須與compact framework 3.5中的Windows Mobile應用程序進行通信。如果連接可用,通信必須通過互聯網在這兩個應用程序之間通過命令在它們之間發送數據。桌面應用程序與Windows Mobile Compact Framework之間的通信c#

系統將在設備和桌面應用程序之間發送消息和對象(如圖像),並檢查桌面是否可以通過發送命令看到設備,並且響應超時。 (應用程序會知道該設備不可用)。 移動設備將在線時發送消息給桌面應用程序以及桌面知道移動設備已連接(註冊通信類型)

有人可以通知我完成此操作的最佳方法。

我做了一些研究,發現這site是接近像事件驅動的通信,我想要的但沒有在每個設備上設置電子郵件的可用性。

電池壽命和互聯網在設備上打開不是問題。

我應該檢查使用System.Net.Socket類來處理這兩種應用程序之間的這種通信類型嗎?如果可以的話,我將如何設置防火牆將不會干擾,並讓我的桌面應用程序在互聯網上看到由移動應用程序?

希望有人可以爲我散佈一些光線,如果您有答案,請提供一個鏈接,以便我能夠閱讀它。

回答

0

你的描述是基本的東西。 OK,無論您決定使用哪種TCP/IP通信(HTTP,套接字),您必須始終讓Internet路由器將指定傳入端口上的軟件包轉發到您的PC,並且firwall必須接受這些傳入請求。因此,設備將不得不向PC發送數據,反之亦然。因此,您需要PC和PC上的服務器和客戶端。

可能您可以使用像Dropbox這樣已經可用的雲在PC和設備之間交換文件。

你在socket編程方面的技能是什麼?主服務器(PC)必須寫入多線程以便能夠服務多個設備客戶端請求。

一個簡單的套接字comm在我的SocketWedge中完成[http://www.hjgode.de/wp/2010/05/27/transmit-data-from-winmo-device-to-pc-socketwedge-and- socketsend /]。一種在設備上使用Web服務器的多線程通信方式可以在這裏找到[http://www.hjgode.de/wp/2012/10/19/windows-mobile-a-simple-web-server-with-extended-特徵/]。

SQL與數據同步會是一個可能的選擇嗎?

你能更詳細地描述應用程序嗎?

〜josef

+0

嗨,我正在做一些移動和桌面之間的編程測試。經過大量的研究,我用tcp端口轉發去了一切工作。也有多線程的通信,並且會說我的技能大約是七分之七或更多,但不喜歡說可以總是從其他學習中學習。目前,如果類中包含一個Image對象,那麼就很難序列化一個在pc和設備之間發送的類對象。我使用http://code.google。com/p/protobuf-net /用於在服務器和移動設備上進行序列化,但停留在圖像上。 – Frederick

+0

你可能有一些關於在緊湊框架中序列化對象的信息嗎?仍然在研究,如果我甚至只能夠將圖像作爲對象序列化並將其轉換回代碼中的圖像,也是可行的。可以通過在類中指定一個枚舉來測試該對象是否爲圖像。 – Frederick

+0

正在考慮將圖像轉換爲64像這樣做,但想知道是否有更好的選擇 – Frederick

相關問題