VisualSVN 破解方法
程序员文章站
2022-04-08 17:45:59
第一步,首先准备反汇编工具 ildasm.exe,找到VisualSVN的安装路径,一般先备份,在备份里面操作。 第二步,转储 , 得到同名的il文件:VisualSVN.Core.L.il,用记事本打开得到的 VisualSVN.Core.L.il 文件,在其中搜索 “KeyToLicenseUn ......
第一步,首先准备反汇编工具 ildasm.exe,找到visualsvn的安装路径,一般先备份,在备份里面操作。
第二步,转储 , 得到同名的il文件:visualsvn.core.l.il,用记事本打开得到的 visualsvn.core.l.il 文件,在其中搜索 “keytolicenseunsafe”,找到keytolicenseunsafe方法,大概在3296行附近。查找并替换成下面的代码,然后保存
.method public hidebysig static class visualsvn.core.licensing.license keytolicenseunsafe(class visualsvn.core.idecoder decoder, string key) cil managed { // 代码大小 69 (0x45) .locals init (class visualsvn.core.licensing.license v_0, class visualsvn.core.licensing.license v_1, class visualsvn.core.licensing.license v_2) il_0000: nop il_0001: newobj instance void visualsvn.core.licensing.license::.ctor() il_0006: stloc.1 il_0007: ldloc.1 il_0008: ldsfld valuetype [mscorlib]system.datetime [mscorlib]system.datetime::minvalue il_000d: stfld valuetype [mscorlib]system.datetime visualsvn.core.licensing.license::starttime il_0012: ldloc.1 il_0013: ldc.i4.1 il_0014: stfld valuetype visualsvn.core.licensing.licensebinding visualsvn.core.licensing.license::binding il_0019: ldloc.1 il_001a: ldc.i4 0x7ffffffe il_001f: stfld int32 visualsvn.core.licensing.license::capacity il_0024: ldloc.1 il_0025: ldsfld valuetype [mscorlib]system.datetime [mscorlib]system.datetime::maxvalue il_002a: stfld valuetype [mscorlib]system.datetime visualsvn.core.licensing.license::endtime il_002f: ldloc.1 il_0030: ldc.i4.2 il_0031: stfld valuetype visualsvn.core.licensing.licensetype visualsvn.core.licensing.license::type il_0036: ldloc.1 il_0037: ldstr "100" il_003c: stfld string visualsvn.core.licensing.license::purchaseid il_0041: ldloc.1 il_0042: call string [mscorlib]system.environment::get_username() il_0047: stfld string visualsvn.core.licensing.license::licensedto il_004c: ldloc.1 il_004d: stloc.0 il_004e: ldloc.0 il_004f: ldloc.0 il_0050: ldfld valuetype [mscorlib]system.datetime visualsvn.core.licensing.license::starttime il_0055: stfld valuetype [mscorlib]system.datetime visualsvn.core.licensing.license::purchasedate il_005a: ldloc.0 il_005b: stloc.2 il_005c: br.s il_005e il_005e:ldloc.2 il_005f: ret } // end of method licenseconverter::keytolicenseunsafe
第三步,用vs2015开发人员命令提示 ,然后覆盖到 bin目录
用vs2015开发人员命令提示 运行如下代码(换成自己的)
ilasm "c:\program files (x86)\visualsvn\bins\visualsvn.core.l.il" /output="c:\program files (x86)\visualsvn\bins\visualsvn.core.l.dll" /dll
看到如下界面
表示编译成功,然后把编译好的visualsvn.core.l.dll 覆盖到 bin目录下就完成破解了。