我花了30分鐘試了一下.. 不知道對(duì)不對(duì)哦.. 未驗(yàn)證過..
首先在文檔的Basic Usage中看一個(gè)使用的例子:
1. com.incors.plaf.alloy.AlloyLookAndFeel.setProperty("alloy.licenseCode", "x#myCompany#skd23j#dsjd9");
2. javax.swing.LookAndFeel alloyLnF = new com.incors.plaf.alloy.AlloyLookAndFeel();
對(duì)于第一句,利用反編譯工具(DJ)找到:
public static void setProperty(String s, String s1){
bi.a(s, s1);//
}
然后順藤摸瓜..:
//bi.a("alloy.licenseCode", "x#myCompany#skd23j#dsjd9")
public static void a(String s, String s1){
if(a == null) a();//private static HashMap a;
a.put(s, s1);//儲(chǔ)存在一個(gè)HashHap里面
}
對(duì)于第二句:
//AlloyLookAndFeel(null)
public AlloyLookAndFeel(AlloyTheme alloytheme){
//...很多l(xiāng)abel跳轉(zhuǎn)..忽略掉
label3:
{
//...
if(!ch.d())
{
//這好像.. 嗯,很可疑
JOptionPane.showMessageDialog(null, "License code not valid", "License Error", 0);
//...
}
//...
}
//...
}
于是再反編譯ch類:
//ch.class
public static boolean d(){
if(!a) a();
return b;//初始化為false;
}
這.. 好像很簡單,改成這樣就行了:
//當(dāng)然還有別的辦法,不過那些算法,CRC校驗(yàn)我懶得計(jì)算了-.-
public static boolean d(){
if(!a) a();
return true;
}
最后用YingJAD反編譯所有文件(DJ好像一次只能反編譯一個(gè)),建立新工程,添加所有*.java,再編譯,打包成jar文件替換原來的..
回復(fù) 更多評(píng)論