.net 破解的几个常用工具
-
在.net 破解中我们经常会提到 Reflector\SimpleAssemblyExplorer和CFF Explore这几个工具. 我们以一个简单的确Windows Form程序为例来说说他们怎么使用,代码如下:
123456789101112131415161718192021222324252627publicpartialclassConversion : Form{publicConversion(){InitializeComponent();}bool isTrialExpired =true;privatevoidbutton1_Click(object sender, EventArgs e){doublec = Convert.ToDouble(textBox1.Text);doublef = (c *9/5) +32;label3.Text = f.ToString();}privatevoidTrialExpiredCheck(){if(isTrialExpired){MessageBox.Show(@"Trial Duration has expired! Installed Freh copy","!!!!Alert Message!!!!");Application.Exit();}}privatevoidConversion_Load(object sender, EventArgs e){TrialExpiredCheck();}}正常运行弹出消息框然后程序退出.

要破解此程序有几个方法:1.让isTrialExpired为false;2.清空Conversion_Load方法 3.清空TrialExpiredCheck方法. 我们现在以上面3个工具依此来实现一下:
Reflector:
Reflector必须有Reflexil插件.用Reflector打开程序找到Conversion_Load方法,选择tool中的Reflexil:


现在我们需要在Conversion_Load方法中添加一句 isTrialExpired = false;的代码, 操作如下:


修改Conversion_Load如下:

点"OK"按钮,再Save As:


运行结果:


SimpleAssemblyExplorer:
打开程序选择class Editor:


bool isTrialExpired = true;这句代码其实是两句 bool isTrialExpired = false; isTrialExpired = true;第二句在构造方法执行,也对应这里标出的前3个命令,我们只需删除这3个指令就可以了.



运行结果:


CFF Explore:
用ILDASM打开程序

找到TrialExpiredCheck方法,这里我们做2个破解,1删除 Application.Exit();2.删除方法中的所有内容:


用CFF Explore打开程序


在RAV处输入20cc:

注意
IL_0018: /* 28 " (0A)00001A */ call void [System.Windows.Forms]System.Windows.Forms.Application::Exit()这句的地址是 28 1A 00 00 0A

把28 1A 00 00 0A全部改为00, 然后点修改按钮

Save As:

运行结果:



如果要删除TrialExpiredCheck方法的全部内容,既删除如下指令:


需要把标记的部分全部改为00:

保存后运行结果:
下载 有不妥的地方欢迎大家拍砖!
.net 破解的几个常用工具的更多相关文章
- Android开发常用工具汇总
Android开发常用工具汇总,本文章不断更新完善 一.数据库小工具Sqlite Developer SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的, ...
- Java后端开发常用工具
Java后端开发常用工具推荐: 俗话说,工欲善其事,必先利其器.不过初学时候不大建议过度依赖IDE等过多工具,这会让自己的编程基础功变得很差,比如各种语法的不熟悉,各种关键字比如synchronize ...
- Windows 常用工具 & 开发工具 & Chrome插件 & Firefox 插件 & 办公软件
常用工具 1.FastStone 8.0 2.印象笔记 3.Chrome 4.Beyond Compare 5.Everything 6.有道词典 7.文本编辑软件 EditPlus UltraEdi ...
- js常用工具类.
一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...
- Linux 常用工具小结:(5) lftp工具使用
Linux 常用工具小结:(1) lftp工具使用. 这里会按照一些比较常用的功能列出,并举一个具体的例子逐一解释功能. 通常使用ftp过程是登陆ftp,浏览ftp内容,下载ftp文件,或者上传ftp ...
- spring中常用工具类介绍
http://www.cnblogs.com/langtianya/p/3875103.html 文件资源操作 Spring 定义了一个 org.springframework.core.io ...
- IOS开发--常用工具类收集整理(Objective-C)(持续更新)
前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...
- Apache Commons 常用工具类整理
其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...
- Android 常用工具类之SPUtil,可以修改默认sp文件的路径
参考: 1. 利用Java反射机制改变SharedPreferences存储路径 Singleton1900 2. Android快速开发系列 10个常用工具类 Hongyang import ...
随机推荐
- vertical-align:middle图片或者按钮垂直居中
<img>或者button按钮 垂直不对齐,加上vertical-align:middle,就能垂直对齐,常用于水平布局的验证码图片 或者按钮 也适用于 text和button在一起也会不 ...
- oracle11g 表或视图连接时有可能发生的问题
---------背景--------- oracle11g 有2个视图,都有一个id字段,且id字段的值相同 例如:id都有 A01 ,A02 ,A03 --------问题--------- 把2 ...
- DELPHI关于文件的操作
caption:= ExtractFileExt(‘带路径,带扩展名的文件名’);//返回的就是扩展名 caption:= ChangeFileExt(ExtractFileName(‘带路径,带扩 ...
- 最近在无线USB网卡投入比较大
第一次(40): 乐光N18网卡 17 5米USB延长线 10 DVD2 3 运费10 第二次(30): 8187L主板13 5DB/6DB全向天线 5 外壳FREE 运费12 第三次(20): 8D ...
- Python的进程间通信
进程间通讯有多种方式,包括信号,管道,消息队列,信号量,共享内存,socket等 1.共享内存 Python可以通过mmap模块实现进程之间的共享内存 mmap文件对象既像一个字符串也像一个普通文件对 ...
- NetBeans8 类编缉器及控制台中文乱码解决
1.类编辑器中文乱码的解决: 工具-->选项-->字体和颜色-->"语法"选项卡:右侧选择字体的地方设置一个支持中文的字体,如宋体.新宋体.微软雅黑等 2.控制台 ...
- nodejs child process
//Create child processvar thread = require('child_process'); var msg = thread.fork(__dirname + '/chi ...
- c++函数内部可以返回函数内部定义的指针 但是不能返回函数内部定义的数组
1.返回数组 // demo.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<stdio.h> char *m ...
- loadmore & scroll
loadmore <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.m ...
- RubyCritic:一款不错的检测代码质量工具
关注代码质量是高效开发必须要做的一件事,那么在 Ruby 开发的过程中,是否有什么好的代码质量检测工具呢?下面由 Ruby 工程师路英瑞介绍一下 RubyCritic--一款还不错的代码质量检测工具. ...