<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    李順利
    隨筆-50  評論-170  文章-0  trackbacks-0

    MyEclipse注冊碼生成代碼

    關鍵字:MyEclipse 注冊碼 代碼 Java 生成 Key Subscription李順利

    MyEclipse注冊碼網上到處都是,但是你想不想用你的名字來進行注冊,而且想不想知道MyEclipse注冊碼到底是如何生成的?現在就讓我來帶你看看MyEclipse注冊碼是如何人性化的生成的。

    代碼如下:

    package org.usc.key.gen;

    import java.io.BufferedReader;

    import java.io.IOException;

    import java.io.InputStreamReader;

    import java.util.Scanner;

    /**

    * MyEclipse(8.0,7.5,7.0,6.5,6.0...)的注冊碼生成代碼

    *

    *

    * @author ShunLi

    * @Time 2009-12-25

    */

    public class MyEclipseKeyGen

    {

    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 MyEclipseKeyGen()

    {

    }

    /**

    * 具體的Subscription Code生成算法

    *

    * @param userId

    * (Subscriber)

    * @param licenseNum

    * @return Subscription Code

    */

    public String getSerial(String subscriber, String licenseNum)

    {

    java.util.Calendar cal = java.util.Calendar.getInstance();// 獲得當前日期

    cal.add(1, 3);// +3年

    cal.add(6, -1);// 當前日-1

    java.text.NumberFormat nf = new java.text.DecimalFormat("000");

    licenseNum = nf.format(Integer.valueOf(licenseNum));// licenseNum格式化成三位數字

    String verTime = new StringBuilder("-").append(

    new java.text.SimpleDateFormat("yyMMdd").format(cal.getTime()))

    .append("0").toString();// 日期

    String type = "YE3MP-";

    String need = new StringBuilder(subscriber.substring(0, 1))

    .append(type).append("300").append(licenseNum).append(verTime)

    .toString();// 初步注冊信息

    String dx = new StringBuilder(need).append(LL).append(subscriber)

    .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();// 把s轉化為單個字符數組

    j = 0;

    k = ac.length;

    while (j < k)

    {

    i = (31 * i) + ac[j];//加密算法,不理解為什么這樣子?有可能就是這樣子定義的

    j++;

    }

    System.out.println();

    return Math.abs(i);//取絕對值

    }

    /**

    * 變化原則是

    * 把數字(10個)或者字母表(大小寫個26個)折半對調(兩個相互改變),也即

    * 0與5對調(0變5,5變0)

    * A與N,a與n對調

    * @param 原字符串

    * @return 變化后的字符串

    */

    private String change(String s)

    {

    byte[] abyte0;

    char[] ac = null;

    int i;

    int k;

    int j;

    abyte0 = s.getBytes();

    ac = new char[abyte0.length];

    i = 0;

    k = abyte0.length;

    while (i < k)

    {

    j = abyte0[i];

    if ((j >= 48) && (j <= 57))// 0-9,實現01234和56789相應的相互對調,也即0與5對調,1與6對調

    {

    j = (((j - 48) + 5) % 10) + 48;

    } else if ((j >= 65) && (j <= 90))// A-Z

    {

    j = (((j - 65) + 13) % 26) + 65;

    } else if ((j >= 97) && (j <= 122))// a-z

    {

    j = (((j - 97) + 13) % 26) + 97;

    }

    ac[i] = (char) j;

    i++;

    }

    return String.valueOf(ac);

    }

    /**

    * 主方法,首先調用,產生注冊碼(Subscription Code)

    *

    * @param args

    */

    public static void main(String[] args)

    {

    // 輸入中文會出現一些中文亂碼問題

    // 輸入中文,一個是由于工程設置的字符集有可能會出現亂碼,第二個是后面的getBytes對不同的字符會出現不同的處理形式而導致的中文亂碼

    // 所以大家也就沒有辦法設置中文用戶名了,如果有高手解決了,請通知我(QQ:506817493,E:leeshunli@qq.com),謝謝

    System.out.print("請輸入注冊的用戶名(不支持中文):");

    Scanner scanner = new Scanner(System.in);//輸入流

    String subscriber = scanner.nextLine();//讀下一行字符串

    MyEclipseKeyGen myeclipseKeyGen = new MyEclipseKeyGen();//實例化

    String subscription_Code = myeclipseKeyGen.getSerial(subscriber, "1");// 后面的參數是一個數字類型的字符串,數字范圍為0-999

    System.out.println("\n" + "MyEclipse注冊碼生成的結果如下" + "\n");

    System.out.println("Subscriber:" + subscriber);

    System.out.println("Subscription Code:" + subscription_Code);

    /**

    * 下面的是JDK1.5以前的寫法,JDK1.5及以上版本的請看上面更好的寫法

    */

    /*

    * BufferedReader reader = null; try {

    * System.out.println("請輸入注冊的用戶名(不支持中文):"); reader = new

    * BufferedReader(new InputStreamReader(System.in)); String subscriber =

    * null; subscriber = reader.readLine(); System.out.println(subscriber);

    *

    * MyEclipseKeyGen myeclipseKeyGen = new MyEclipseKeyGen(); String

    * subscription_Code = myeclipseKeyGen.getSerial(subscriber, "1");//

    * 后面的參數是一個數字類型的字符串,數字范圍為0-999 // System.out.println("注冊生成的結果如下");

    * System.out.println("Subscriber:" + subscriber);

    * System.out.println("Subscription Code:" + subscription_Code);

    * reader.readLine();

    *

    * } catch (IOException ex) { ex.printStackTrace(); } finally { if

    * (reader != null) { try { reader.close(); } catch (IOException e) {

    * e.printStackTrace(); } reader = null; } }

    */

    }

    }

    生成注冊碼測試:

    clip_image002

    請輸入注冊的用戶名(不支持中文):ShunLi

    MyEclipse注冊碼生成的結果如下

    Subscriber:ShunLi

    Subscription Code:FLR8ZC-855556-67677956505812246

    如何注冊?

    選擇:MyEclipse->Subscription Information...,在把剛生成的注冊碼對應填入

    clip_image004

    (由于我已經注冊調試成功,可能截圖有點不一樣,請諒解),注冊三年(你三年不重裝電腦或其他情況真的很少了)。

    注:本程序借鑒網上,自己加了些自己的想法和注釋,并做了一些改進,本人QQ:506817493,歡迎大家一起交流學習。

    順利寫于2009年12月25日

    博客中的一些下載已經放到了百度云了,請根據需要下載。【點我去百度云下載】

    最后弱弱地說一下,如果可以的話,轉載請提供出處( ),謝謝。

    posted on 2010-01-07 21:24 李順利 閱讀(18956) 評論(5)  編輯  收藏

    評論:
    # re: MyEclipse注冊碼生成代碼 2012-06-16 10:25 | TT
    HAO   回復  更多評論
      
    # re: MyEclipse注冊碼生成代碼 2013-03-08 16:29 | 啊啊啊
    編譯好后把代碼沾上去發現他還呀active
      回復  更多評論
      
    # re: MyEclipse注冊碼生成代碼 2013-08-24 10:12 | 高根
    安師大的  回復  更多評論
      
    # re: MyEclipse注冊碼生成代碼 2013-10-26 19:14 | mr
    好厲害  回復  更多評論
      
    # re: MyEclipse注冊碼生成代碼[未登錄] 2014-05-22 16:14 | x
    cgvnmv bnnv  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。

    網站導航:
     
    主站蜘蛛池模板: 成人免费网站久久久| 亚洲综合精品伊人久久| 久久er国产精品免费观看8| 亚洲午夜未满十八勿入| 中文字幕久无码免费久久| 精品国产亚洲一区二区在线观看 | 亚洲精品在线播放| 91成人在线免费观看| 久久久亚洲AV波多野结衣| 麻豆视频免费播放| 久久狠狠爱亚洲综合影院| 成年女人毛片免费播放视频m| 亚洲日韩亚洲另类激情文学| 青青草国产免费久久久下载| 未满十八私人高清免费影院| 中文字幕第13亚洲另类| 免费视频精品一区二区三区 | 亚洲人xxx日本人18| 性盈盈影院免费视频观看在线一区| 亚洲国产系列一区二区三区| 国产青草视频免费观看97| 在线播放免费人成视频网站| 亚洲男同帅GAY片在线观看| 日韩人妻一区二区三区免费| 国产成人精品日本亚洲18图| 国产在线a不卡免费视频| 精品人妻系列无码人妻免费视频| 国产成人亚洲综合色影视| 91手机看片国产永久免费| 亚洲精品国产精品| 亚洲女久久久噜噜噜熟女 | 好爽好紧好大的免费视频国产| 曰批全过程免费视频免费看| 国产成人A人亚洲精品无码| 18禁免费无码无遮挡不卡网站| 日日摸日日碰夜夜爽亚洲| 久久亚洲精品国产精品黑人| 精品国产免费观看一区| 国产精品免费观看调教网| 亚洲av永久无码精品秋霞电影秋| 亚洲色大成网站WWW久久九九|