2013-05-11 66 views
2

我測試了Install4J 5.1.5並且遇到了一個小問題。我想要發佈的原始jar文件具有完全權限 - 任何人都可以打開它(使用7zip之類的東西) - 並修改/刪除該jar中的任何條目。然而,同樣的jar - 當通過install4j安裝時,權限基本上變爲只讀。安裝後我無法在jar中修改/刪除任何東西 - 給我權限問題。在install4J中打包的Jar文件具有限制性權限

我想修改/刪除的原因是jar中有幾個屬性文件在安裝過程中由用戶定義,因此我想修改/刪除用戶的新文件中已存在的內容。

我能想到的唯一的事情是我將默認的unix文件和目錄模式設置爲777.但這似乎不起作用。有任何想法嗎?

+0

我想通了(有點)。我正在安裝到默認的C:\ Program Files \(windows 8),似乎安裝在那裏有非常嚴格的權限問題(必須是管理員等)。當我在Program Files的其他地方安裝這個軟件時,我沒有任何問題。 Install4J中是否有能夠以管理員身份運行的設置,以便它可以處理Program Files目錄中的文件? – 2013-05-13 04:58:04

+0

要在特定操作系統上安裝的任何程序都應遵守此操作系統的準則:在大多數情況下,將用戶特定的配置數據存儲在程序文件夾中並不是一個好主意。在UNIXoid系統上,包含這些文件夾的分區甚至可以作爲只讀進行裝載。如果您的數據只能在安裝時進行修改,那麼它可能沒問題。在這種情況下,安裝程序需要所需的權限。 – mschenk74 2013-05-13 08:30:51

回答

1

安裝程序有一個助手進程,它使用提升的權限運行。此輔助進程由默認添加到安裝程序的「啓動」節點的「請求特權」操作啓動。

將其「操作高程類型」屬性設置爲「提升到最大可用權限」的所有操作都在助手進程中執行。

如果要修改應用程序中的文件(即不在安裝程序中),可以使用「添加Windows文件權限」操作使文件對所有人都可寫。