2012-09-04 62 views
1

我需要修改現有的Windows CE應用程序,它從SQL Compact數據庫(sdf)獲取數據以更新數據庫表(只有一個表)一個SQL Server Express,當它停靠在機器上時。從服務器上更新Windows CE設備上的表格的最佳方式

我遇到了Microsoft Sync Framework,它似乎不僅僅能夠讓我達到我的要求。我嘗試了其中一個Walkthrough: Creating an Occasionally Connected Smart Device Application,但無法使應用程序正常工作(基於指南創建的應用程序以及sample code)。 WCF服務託管成功,我也可以從瀏覽器瀏覽服務。

我在SynchronizeMenuItem的click事件的下一行遇到錯誤。

Dim syncStats As Global.Microsoft.Synchronization.Data.SyncStatistics = syncAgent.Synchronize()

下面是從輸出窗口中的跟蹤:

'MobileSyncServices.exe'(管理):加載類型的 'System.SR.dll'
第一個機會異常' System.Net.WebException'發生在System.dll中
在System.ServiceModel.dll中發生類型爲「System.ServiceModel.EndpointNotFoundException」的第一次機會異常
類型爲「System.Net.Sockets.SocketException」的第一次機會異常Ø在System.dll中出現
System.dll中發生類型'System.Net.Sockets.SocketException'的第一次機會異常
線程0x771e2c1e已退出,並且代碼爲0(0x0)。
型「System.Reflection.TargetInvocationException」的第一次機會異常出現在mscorlib.dll

我一直試圖找到一個解決這個問題,因爲我沒有遇到任何後第2天,因此來張貼在這裏。我已經安裝了所有必備的框架/服務包。你們有沒有嘗試過這個步驟,遇到類似的問題?讓我更加困惑的是,我的兩個開發機器中的示例代碼也失敗了(1是Win XP和Win 7)。

是否有任何其他替代方法來使用SQL Express Server在停靠時更新Windows CE設備中的表?

+0

你確定你的Windows CE設備具有ActiveSync的? – yms

+0

是否有任何特定的軟件需要安裝Activesync for mobile?我認爲它有,因爲我可以部署應用程序並與我的電腦同步。但我無法在設備中找到任何具有活動同步名稱的特定應用。 – fujiFX

+0

如果您可以部署應用程序並進行同步,則您擁有activesync – yms

回答

1

需求是找到一種方法來覆蓋停靠的設備上的表(通過ActiveSync/Sync Center連接),通過從Pocket PC直接連接到SQL Server(通過指定IP地址)來實現此目的。

用戶將指定SQL Server憑據在系統配置/選項下,這將用於連接到SQL Server。一旦來自服務器的所需數據被刪除,緊湊型數據庫將更新相關數據。

下面的網絡資源爲解決這個問題鋪平了道路,並實現了目標。

  1. Connecting to SQL Server Express from a Pocket PC application

  2. Accessing SQL Server Express from the emulator (or PDA)

相關問題