2009-05-30 95 views
0

我有一個windows mobile 5.0應用程序(智能手機),其中包含一個平面數據文件(CSV),其中包含一個標題行(兩個雙打)和一個條目列表(兩個雙打,DateTime和一個字符串)。確保Windows Mobile應用程序未運行 - 從桌面應用程序

偶爾,我需要將移動應用程序與桌面應用程序「同步」。桌面應用程序應該從移動設備讀取CSV,並根據舊的內容替換爲新的CSV文件。

這似乎很容易通過RAPI(我猜),但我需要確保移動應用程序沒有運行。有沒有辦法做到這一點?

Mutex?遠程過程查看器像東西?文件鎖定?

感謝所有幫助你

邁克

回答

1

只是使用簡單的文件鎖定機制來讀取/更新文件。

要麼在使用前重命名文件,要麼創建第二個'lock'文件,您可以檢查文件是否存在。

0

只要想到一個簡單的方法。

程序每3秒運行一次,使用當前日期時間更新註冊表項。

當我想同步時,請檢查移動註冊表,5秒鐘後再檢查一次。如果值改變,程序仍在運行。

+0

這將是一個非常糟糕的主意。讓移動應用程序以這種頻率執行任務會影響其進入低功耗模式的能力。這會極大地影響電池壽命。 – 2009-05-30 08:36:58

+0

是的,沒有想到這一點。 – 2009-05-30 18:41:27

1

無論出於何種原因,built-in RAPI Functions沒有任何內容來檢查運行進程,如ToolHelp API's。使用C語言,您可以在調用ToolHelp API的設備庫中創建一組定製函數,然後通過CeRapiInvoke(這是定製RAPI函數的通用catch-all入口點)調用該函數。不幸的是,在託管代碼中沒有簡單的機制來做到這一點。

相關問題