最近搞项目要与几个同事一起coding,鉴于代码的合并和提交的问题,所以要搞个版本管理。由于是私有的项目,所以退git 求SVN了.装了乌龟和Visual SVN,才发现Visual SVN的客户端不是免费的,又想用,于是。。。。。。。你懂的;

找了网上一通,好像都没有比较新版本Visual SVN的 pojie,我就郁闷了,难道很多人都没用新版的吗?汇总了一下旧版本的方法,原理大概明白了,剩下就是动手的问题:

具体步骤如下:

1.反编译
ildasm "C:\Program Files (x86)\VisualSVN\bin\VisualSVN.Core.L.dll" /out="C:\Program Files (x86)\VisualSVN\bin\VisualSVN.Core.L.il"
 
2. 文本编辑器打开刚才输出的il文件,查找:

KeyToLicenseUnsafe(class VisualSVN.Core.IDecoder decoder,
string key)

将该方法括号内的代码体对应的键值对替换如下:

.maxstack 2
.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

保存。

3. 回到命令行输入”ilasm 刚才的il文件 /dll”

例如:ilasm "C:\Program Files (x86)\VisualSVN\binVisualSVN.Core.L.il" /dll

4.编译得到新的dll重命名后覆盖原VisualSVN.Core.L.dll。

Visual SVN 5.01 Po jie 笔记的更多相关文章

  1. linux上svn连接visual svn server时ssl鉴权失败,问题解决(转)

    场景:1.在windows 7上安装了visual svn server作为自己的svn服务器. 2.在虚拟机centos 6.3上使用svn客户端check代码,报错: [plain] view p ...

  2. visual SVN 反编译破解

    今天发现visual SVN 过期了.网上搜索了一下,发现了下面的贴子. http://www.heiqu.com/show-71200-1.html 一看是用.Net写的,大喜,破解就太简单了.本来 ...

  3. 【Visual C++】游戏编程学习笔记之四:透明动画实现

    本系列文章由@二货梦想家张程 所写,转载请注明出处. 本文章链接:http://blog.csdn.net/terence1212/article/details/44224963 作者:ZeeCod ...

  4. 【Visual C++】游戏编程学习笔记之八:鼠标输入消息(小demo)

     本系列文章由@二货梦想家张程 所写,转载请注明出处. 作者:ZeeCoder  微博链接:http://weibo.com/zc463717263 我的邮箱:michealfloyd@126.c ...

  5. 【Visual C++】游戏编程学习笔记之七:键盘输入消息

     本系列文章由@二货梦想家张程 所写,转载请注明出处. 作者:ZeeCoder  微博链接:http://weibo.com/zc463717263 我的邮箱:michealfloyd@126.c ...

  6. 【Visual C++】游戏编程学习笔记之六:多背景循环动画

    本系列文章由@二货梦想家张程 所写,转载请注明出处. 本文章链接:http://blog.csdn.net/terence1212/article/details/44264153 作者:ZeeCod ...

  7. Deep Reinforcement Learning for Visual Object Tracking in Videos 论文笔记

    Deep Reinforcement Learning for Visual Object Tracking in Videos 论文笔记 arXiv 摘要:本文提出了一种 DRL 算法进行单目标跟踪 ...

  8. Visual SVN的安装

    作为一个程序开发人员,就算自己一个人写程序,也应该有一个SVN版本控制系统,以便对开发代码进行有效的管理.今天我就介绍一个在Windows环境下简单快速搭建SVN服务器的方法. 通常的SVN服务器是搭 ...

  9. Visual SVN 备份

    -----------2018.11.27更新-------------- 这两天把SVN的服务器重做了,按照之前的LOAD,DUMP的方法备份恢复.发现了以下问题: 1,时间比较长,备份和恢复都很长 ...

随机推荐

  1. Oracle使用java source调用外部程序

    需求 Oracle调用第三方外部程序.Oracle使用sqluldr2快速导出大批量数据,然后用winrar压缩后发送邮件. 本文档主要实现前两步需求,发送邮件程序这里不再说明. 原码 授权 begi ...

  2. 返回人民币大写方式(num2rmb)

    CREATE OR REPLACE FUNCTION num2rmb(Pi_MONEY NVARCHAR2) RETURN NVARCHAR2 IS -- PURPOSE :返回人民币大写方式 v_N ...

  3. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  4. java基础算法之插入排序

    一.插入排序介绍 插入排序(Insertion Sort)是一种简单直观的排序算法.它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入.插入排序在实现上,通 ...

  5. ActiveMQ笔记(7):如何清理无效的延时消息?

    ActiveMQ的延时消息是一个让人又爱又恨的功能,具体使用可参考上篇ActiveMQ笔记(6):消息延时投递,在很多需要消息延时投递的业务场景十分有用,但是也有一个缺陷,在一些大访问量的场景,如果瞬 ...

  6. [LeetCode] Ternary Expression Parser 三元表达式解析器

    Given a string representing arbitrarily nested ternary expressions, calculate the result of the expr ...

  7. [LeetCode] Word Ladder II 词语阶梯之二

    Given two words (start and end), and a dictionary, find all shortest transformation sequence(s) from ...

  8. 微信支付(.NET版)

    前段时间做了网页版微信支付,遇到很多问题,不过最终还是解决了,现在在这里记录下开发流程以及说明,给其他人一些参考. 一.准备工作     首先肯定得先要开通微信支付功能,之前开通微信支付需要三万的押金 ...

  9. 编译自己的Ubuntu内核

    很多时候我们在使用Ubuntu的时候,想修改一下内核配置,然后编译,安装到Ubuntu中.这也是进行Ubuntu内核开发的前提. 获取当前Ubuntu对应代码 有很多方法可以获得Ubuntu内核代码, ...

  10. __new__静态方法

    __new__静态方法 新式类都有一个__new__的静态方法,它的原型是object.__new__(cls[, ...]) cls是一个类对象,当你调用C(*args, **kargs)来创建一个 ...