随笔-16  评论-84  文章-1  trackbacks-0
代码如下:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class MyEclipseGen {
private static final String LL = "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself.";

public String getSerial(String userId, String licenseNum) {
   java.util.Calendar cal 
= java.util.Calendar.getInstance();
   cal.add(
13);
   cal.add(
6-1);
   java.text.NumberFormat nf 
= new java.text.DecimalFormat("000");
   licenseNum 
= nf.format(Integer.valueOf(licenseNum));
   String verTime 
= new StringBuilder("-").append(
     
new java.text.SimpleDateFormat("yyMMdd").format(cal.getTime()))
     .append(
"0").toString();
   String type 
= "YE3MP-";
   String need 
= new StringBuilder(userId.substring(01)).append(type)
     .append(
"300").append(licenseNum).append(verTime).toString();
   String dx 
= new StringBuilder(need).append(LL).append(userId)
     .toString();
   
int suf = this.decode(dx);
   String code 
= new StringBuilder(need).append(String.valueOf(suf))
     .toString();
   
return this.change(code);
}


private int decode(String s) {
   
int i;
   
char[] ac;
   
int j;
   
int k;
   i 
= 0;
   ac 
= s.toCharArray();
   j 
= 0;
   k 
= ac.length;
   
while (j < k) {
    i 
= (31 * i) + ac[j];
    j
++;
   }

   
return Math.abs(i);
}


private String change(String s) {
   
byte[] abyte0;
   
char[] ac;
   
int i;
   
int k;
   
int j;
   abyte0 
= s.getBytes();
   ac 
= new char[s.length()];
   i 
= 0;
   k 
= abyte0.length;
   
while (i < k) {
    j 
= abyte0[i];
    
if ((j >= 48&& (j <= 57)) {
     j 
= (((j - 48+ 5% 10+ 48;
    }
 else if ((j >= 65&& (j <= 90)) {
     j 
= (((j - 65+ 13% 26+ 65;
    }
 else if ((j >= 97&& (j <= 122)) {
     j 
= (((j - 97+ 13% 26+ 97;
    }

    ac[i] 
= (char) j;
    i
++;
   }

   
return String.valueOf(ac);
}


public MyEclipseGen() {
   
super();
}


public static void main(String[] args) {
   
try {
    System.out.println(
"please input register name:");
    BufferedReader reader 
= new BufferedReader(new InputStreamReader(
      System.in));
    String userId 
= null;
    userId 
= reader.readLine();
    MyEclipseGen myeclipsegen 
= new MyEclipseGen();
    String res 
= myeclipsegen.getSerial(userId, "5");
    System.out.println(
"Serial:" + res);
    reader.readLine();
   }
 catch (IOException ex) {
   }

}

}


注册方法:
window -> preferences -> myeclipse -> subscription

 

posted on 2010-02-16 09:20 absolute 阅读(301) 评论(0)  编辑  收藏 所属分类: Crack & Tip