我必須創建具有符合以下特徵的Java應用程序jar
:創建一個運行一次只-Java應用程序
- 有裝在罐子裏的XML數據被讀取的應用程序第一次開始。隨着應用程序的每次連續啓動,數據都從動態創建的二進制文件中加載。
- 客戶不應該能夠將應用程序重置爲其主要狀態(例如,如果由於某種原因二進制文件被刪除,應用程序將無法再次運行並給出錯誤消息)。
- 這一切不應該依賴於它運行(這意味着如在Windows中設置註冊表項不會做的工作)
總結我想,以防止一旦開始申請重置操作系統以限制應用程序的非法複用。
現在我就如何實現這一目標的想法:
- 在第一次運行中刪除從罐子XML(到目前爲止我才恍然大悟,這是不可能的,讓應用程序編輯它自己罐子。是真的嗎?)
- 設置一個變量/屬性/設置/不管在第一次運行永久罐子(是可能的)
任何建議/關於如何實現這一目標的想法?
更新:
我沒有找到這個確切的問題的解決方案,但我發現一個簡單的解決方法:用我的軟件一起我船某個特定文件的程序啓動第一次後得到改變。當然,如果有人保留原始文件的副本,他總是可以替換它並重新開始。
沒有完美的解決方案。在每次運行之前,總有人可以保存備份並從備份中恢復。 – raptortech97 2013-03-25 16:29:43
我知道沒有完美的解決方案,但我想讓它更難一點。我也知道,在運行一次之前複製jar會使整件事變得毫無意義。但它會很好,以防止已經運行的jar被重置 – gagabu 2013-03-25 16:35:33