2013-03-18 170 views
2

是否有方法以编程方式更改deployment.properties中的选项(用户的appdata文件夹中的选项)(不直接写入文件)?以编程方式更改deployment.properties文件

例如,对于系统的选择,我可以用:

System.setProperty("My Property", "My Value"); 

编辑:基于@eis答案,下面的代码(作为一个例子)工作原理:

import com.sun.deploy.config.Config; 

public class Main { 
    public static void main(String[] args) { 
     Config.setMixcodeValue(Config.MIXCODE_ENABLE); 
     Config.store(); 
    } 
} 

回答

3

这些选项的意思从Java控制面板更改。

如果它已被锁定,用户cannot change it

任何系统部署的财产,说SomeKey = someValue中,可以通过包括另一个关键,SomeKey.locked锁定 。 SomeKey.locked键可能为 或者可能未设置为值;在这两种情况下,SomeKey = SomeValue将被锁定,以便用户不能更改它。如果系统部署 属性未锁定,则允许用户更改它。

如果不是,用户可以通过控制面板进行更改。

现在,至于编程访问,在sun实现类中,有一个Config class,它提供对至少一些属性(如setCacheDirectory())的访问。对于那些暴露出来的,这种改变机制可能起作用

至于其他:基于上面提到的那个类,deployment.properties内部保存为系统属性,所以我没有看到System.setProperty()也不会改变它们的原因。然而,改变这样的属性可能会或可能没有任何影响。