一、VisualSVN 通用破解方法
1. http://www.visualsvn.com/visualsvn/download,下载1.5.x版安装(需要SVN1.5或以上环境)。
2. 进入.NET Framework命令提示符,输入
ildasm "C:/Program Files/VisualSVN/bin/VisualSVN.Core.dll" /out="C:/Program Files/VisualSVN/bin/VisualSVN.Core.il"
或者用 DotNetHelper 工具,将VisualSVN.Core.dll 反编译成 VisualSVN.Core.il文件,再用记事本(最好是Editplus)打开这个文件
在这个文件中找到:“.method public hidebysig static bool IsValid( ”这行
3、把里函数里面的内容改为:
.maxstack 8
IL_0000: ldc.i4.1
IL_0001: ret
注意:“.maxstack 8”里面的“8”,要看看上下文中的同样标志,是否是8,我的是2
(去掉Lincense判断直接return true)。
或者用DotNetHelper工具,直接编译成.dll文件,注意,默认的文件名称是 VisualSVN.Core_Out.dll
把原有的 VisualSVN.Core.dll 删除,再把VisualSVN.Core_Out.dll(新编译的dll文件)改名成 VisualSVN.Core.dll
4. 回到命令行输入
ilasm "C:/Program Files/VisualSVN/bin/VisualSVN.Core.il" /dll
5、再启动vs2005,看看Visualsvn 是不是可用了
二、关于“VisualSVN-2.5.2”的破解
这个软件的核心部分是.net写的,而且没有加密和混淆,使用Reflector很容易反编译。
原来打算写一个Keygen程序,但是分析代码后发现注册信息部分使用了RSA加密,没有私钥就没办法生成注册码。
所以想到另一个方法,修改判断注册码有效性的函数“IsValid”,让其直接返回TRUE,这时无论输什么注册码,都会提示注册成功,但是无法生成有效的license,导致30天后失效。
最后想了一个笨办法,即延长有效期30年,这个方法有效
源码文件如下,请自行编译后覆盖原文件。
http://files.cnblogs.com/anotherstone/VisualSVN.Core.L_Crack.rar