2011-03-25 49 views
1

我們正在開發一個應用程序,應該能夠打開默認編輯器應用程序指定的文件被關閉。 (所以如果它是.doc - 它假設由MSWord或openOffice打開)默認編輯器中打開並等待

但是我還需要等到用戶關閉編輯器,檢查它是否被更改(按大小和日期)並上傳它到服務器。

所以下面的步驟: 1)找到高清編輯 2)打開文件 3)等待它被關閉 4)後,與該文件做的不便。

現在我的研究結果: - >由def編輯器打開很簡單:
file.openWithDefaultApplication();
但沒有辦法知道編輯器被關閉(可能通過檢查文件未鎖定計時器???)

- >我就可以開始本機進程,並通過文件作爲參數,但看起來像代碼
NativeApplication.nativeApplication.getDefaultApplication(file.extension);
不會爲任何擴展:(工作 - 它不爲「RTF格式」工作,「文檔」,但適用於「PDF」 ......和[file.openWithDefaultApplication()工作正常使用任何文件

什麼建議? THX的提前!

+0

做你能做到嗎?我現在處於非常類似的情況:( – 2012-10-08 18:00:08

+0

我們決定這樣做:存儲文件的日期和大小,如果它被更改 - 我們將文件上傳到服務器,如果沒有 - 繼續收聽。如果在保質期沒有變化 - 文件被刪除的原因是,OpenOffice是不鎖定的文件,因此沒有簡單的方法來找出它是打開/關閉與否。 – Leonid 2012-11-14 09:44:40

回答

3

,但沒有辦法知道 編輯器關閉

正確的。我不相信你想要做什麼是可能的AIR如何AIR將能夠分辨f ile是否開放?您可能想要使用NativeProcess;但是這將是對底層OS /默認程序暴露的API,讓你知道什麼時候該計劃是開放和/或關閉的依賴。

0

我唯一的建議是,你不必AIR應用程序監控文件,而是表明說,然後根據該上傳「完成編輯文件時,點擊好」的彈出。

我能想到這個工作的唯一方式是,如果你同時創建一個.bat和一個.sh文件 (對於windows和mac/linux;選擇一個或另一個取決於os)打開通過NativeProcess(當然,把'等待'),你想要的文件,然後聽取關閉事件。