上一篇关于推荐SQL Prompt 3.8的随笔,园子里几位朋友回复反应不能使用格式化功能,并强烈要求再次解决该问题,

      所以昨天晚上弄到凌晨2点,最终的SQL Prompt补丁:
下载地址:/Files/jintan/Sql_Prompt_RedGate.Licensing.Client.rar
支持格式化SQL

其实破解过程很简单,没有涉及到脱壳,跟踪等。

大致的思路是这样的:
public int DaysLeftInTrial 这个属性返回值大于0,我这里是14,
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题       public int DaysLeftInTrial
 


为了保险起见,我又修改了TrialStatus ,
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题public TrialStatus TrialStatus 
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题     get{
return TrialStatus.InTrain; } 
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题     set{再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题.} 
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题

这样已经可以保证永远都是试用并且不过期。

最后修改IL代码,我用的是http://www.codeproject.com/KB/dotnet/NetDasm.aspx这个工具修改IL,配合Reflector使用
当然你也可以直接用SDK里面的ildasm+ilasm工具修改。

这次不用做去掉强命名的操作了,直接copy到目录覆盖原来的就行了。
注意:经测试,一定要去掉强命名才能使用,请自己去掉RedGate.Licensing.Client.dll的强命名。

对于Red-Gate的其他产品,同样可以使用上面的方法,应该没有问题的。

注:
上个版本修改的地方是:
再次发布SQL Prompt 3.8的新的patch,解决了不能格式化T-SQL的问题public bool get_Activated()
}
对应的IL:
Code:
method public hidebysig specialname instance bool get_Activated() cil managed {
.maxstack 8
L_0000: ldc.i4.1
L_0001: ret
}
但是不知道什么原因,格式化的菜单一直是灰色。所以才有现在的这个Patch

相关文章:

  • 2022-01-06
  • 2021-06-01
  • 2021-09-26
  • 2022-12-23
  • 2022-01-27
  • 2022-12-23
  • 2021-08-23
猜你喜欢
  • 2021-12-20
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案