我花了30分钟试了一下.. 不知道对不对哦.. 未验证过..
首先在文档的Basic Usage中看一个使用的例子:
1. com.incors.plaf.alloy.AlloyLookAndFeel.setProperty("alloy.licenseCode", "x#myCompany#skd23j#dsjd9");
2. javax.swing.LookAndFeel alloyLnF = new com.incors.plaf.alloy.AlloyLookAndFeel();
对于第一句,利用反编译工具(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);//储存在一个HashHap里面
}
对于第二句:
//AlloyLookAndFeel(null)
public AlloyLookAndFeel(AlloyTheme alloytheme){
//...很多label跳转..忽略掉
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;
}
这.. 好像很简单,改成这样就行了:
//当然还有别的办法,不过那些算法,CRC校验我懒得计算了-.-
public static boolean d(){
if(!a) a();
return true;
}
最后用YingJAD反编译所有文件(DJ好像一次只能反编译一个),建立新工程,添加所有*.java,再编译,打包成jar文件替换原来的..
回复 更多评论