MyEclipse 9 在Win7 x64下的破解方法

来源:互联网 发布:坏孩子的天空知乎 编辑:程序博客网 时间:2024/05/01 22:23

MyEclipse 9 在Win7 x64下的破解方法

一、使用注册机

网上可以下载到MyEclipse9的注册机(myeclipse9_keygen_activator.exe),但是这个程序在64位环境下运行会报错,如下图:


通过命令行执行:java -jarsystemidtools.jar,可以发现是因为少了支持程序在64位环境下运行的:jniwrap64.dll。google了下,有专门的dll网站提供下载,但貌似服务器上文件丢失,下载不下来,所以这条路暂时走不通。

二、直接修改MyEclipse的激活校验源码

1、说明

关于MyEclipse的激活校验,我目前只找到三个类可以修改使其破解,分别是:

com.genuitec.eclipse.core.ActivationValidator.class;com.genuitec.eclipse.core.LicenseUtil.class;com.genuitec.eclipse.core.activation.ProductActivator.class

com.genuitec.eclipse.core.ActivationValidator.class;

com.genuitec.eclipse.core.LicenseUtil.class;

com.genuitec.eclipse.core.activation.ProductActivator.class

经过实验,个人觉得修改第一个类最方便。

所有工具及其代码,后面会附上下载地址。

2、工具jar包准备

首先,列出所有要用到的工具jar包:

com.genuitec.eclipse.core_9.0.0.me201103181703.jar

com.genuitec.eclipse.core.common.platform_9.0.0.me201102091112.jar

org.eclipse.equinox.common_3.6.0.v20100503.jar

javassist-3.0.jar

其中,前三个都在MyEclipse的安装目录中,具体路径为:安装目录\Common\plugins

我们的ActivationValidator.class就在第一个jar包中,由于该类还引用了com.genuitec.eclipse.core.util.PlatformUtil;org.eclipse.core.runtime.IStatus,所以还有加入另外两个jar包。

第四个javassist-3.0.jar是专门用来修改Java中的Class文件的工具jar包,其具体使用方法参考:http://hi.baidu.com/hi8818/blog/item/a6a3a35451cbcf6f853524d1.html

3、程序代码

首先,新建一个JavaProject,并在工程中导入上面的4个jar包,然后新建一个类,代码如下:

import java.io.IOException;import javassist.CannotCompileException;import javassist.ClassPool;import javassist.CtClass;import javassist.CtMethod;import javassist.NotFoundException;import com.genuitec.eclipse.core.ActivationValidator;import com.genuitec.eclipse.core.util.PlatformUtil;import org.eclipse.core.runtime.IStatus;/** * 直接修改MyEclipse的激活验证类的ActivationValidato的Class文件,使其验证短路,从而达到破解的效果 * @author Administrator * */public class Program {public static void main(String[] args) {try {// ClassPool pool = ClassPool.getDefault();// 载入要修改的类CtClass cc = pool.get("com.genuitec.eclipse.core.ActivationValidator");// 载入要修改的方法CtMethod fMethod = cc.getDeclaredMethod("isExpired");// 重新设置方法体内容fMethod.setBody("return false;");fMethod = cc.getDeclaredMethod("isDecodeFailed");fMethod.setBody("return false;");fMethod = cc.getDeclaredMethod("isValidForLicense");fMethod.setBody("return true;");fMethod = cc.getDeclaredMethod("isValidForSystemId");fMethod.setBody("return true;");fMethod = cc.getDeclaredMethod("isValid");fMethod.setBody("return true;");fMethod = cc.getDeclaredMethod("validate");fMethod.setBody("{return com.genuitec.eclipse.core.util.PlatformUtil.getOKStatus();}");// 保存修改完成的Class文件到指定位置cc.writeFile("E:\\");} catch (NotFoundException e) {e.printStackTrace();} catch (CannotCompileException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}
运行程序,会在E盘中生成ActivationValidator.class,目录层次为:E:\com\genuitec\eclipse\core\ActivationValidator.class,然后用该class,替换:安装目录\Common\plugins\com.genuitec.eclipse.core_9.0.0.me201103181703.jar中的相应class文件就OK了。

这段程序就是通过直接修改ActivationValidator.class文件,使其校验过程直接短路,达到破解的目的。

4、配置激活码文件:.myeclipse.properties

虽然,上面我们对校验过程进行短路,但是程序还有个是否为空的判断,因此,我们需要在属性文件(.myeclipse.properties)中配置一下激活码。

属性文件的位置为:C:\Users\Administrator\ .myeclipse.properties,如果属性文件不存在,可以手动创建之

激活码的值可以随便填。如:

##MyEclipse license file#Sat Jul 30 10:02:15 CST 2011LICENSE_KEY=pLR8ZC-855444-68678656297401489LICENSEE=cloudcube.netACTIVATION_KEY=c7b12e72e28df89e8acff15a6003928c4039f930aff5323f584bbccc3ccdcd9a347877e26b2965c17eae77d7f3550ca54686e7ce887f5afa78a693ec03b40762118a8739c9d7bd6acb40d27a68d06dd2fafc7813fba8230b79670886070e1b96c710b7c1de6d032d0fbfada43e8976db482403327bb61a715aadb338edf9b968

这里的激活码随便配置,只是为了防止验证程序读取为空而已。

5、修改启动配置文件:myeclipse.ini

为了程序正常启动,我们需要避免MyEclipse进行完整性校验,否则,MyEclipse自检程序发现文件被改动时,将导致启动失败。由于本人没有找到也懒得去找完整性校验的代码类,所以直接修改配置文件,取消启动时校验。

配置文件位置:安装目录\MyEclipse9\myeclipse.ini,在文件最后添加如下两行:

-Dgenuitec.honorDevMode=true

-Dosgi.dev=true

6、破解完成

自此破解过程完成,成功启动MyEclipse9。

7、附

1、破解方法从网上收集,但加上自己的完整实践操作并加以整理;

2、工程代码请自行下载,地址:http://download.csdn.net/detail/qqzhuyuehe/3629128


原创粉丝点击