In the previous article about the recommendation of SQL Prompt 3.8, a few friends in the garden replied that they could not use the Formatting Function and strongly demanded that the problem be solved again,
So we got the final SQL Prompt patch at last night:
:/Files/jintan/SQL _Prompt_RedGate.Licensing.Client.rar
Supports SQL formatting
In fact, the cracking process is very simple, and it does not involve shelling or tracking.
The general idea is as follows:
The value of public int DaysLeftInTrial is greater than 0. Here is 14, public int DaysLeftInTrial.
{
Get
{
Int days;
If (this. TrialStatus! = TrialStatus. InTrial)
{
Return 0;
}
If (this. d = DateTime. MinValue)
{
TimeSpan span = DateTime. UtcNow. Subtract (this. B );
Days = 14-span. Days;
}
Else
{
Days = this. d. Subtract (DateTime. UtcNow). Days;
}
If (days <0)
{
Days = 14;
}
Return days;
}
}
For the sake of insurance, I modified TrialStatus and public TrialStatus again.
{
Get {return TrialStatus. InTrain ;}
Set {.}
}
In this way, you can always try it and it will not expire.
Finally, modify the IL code. I used http://www.codeproject.com/kb/dotnet/netdasm.aspxto modify the il' and use reflector.
Of course, you can also directly use the ildasm + ilasm tool in the SDK to modify it.
This time, you don't need to remove the strong name.
Directly copy to the directory to overwrite the original one.
Note: after testing, you must remove the strong name before using it. Remove the strong name of RedGate. Licensing. Client. dll.
For other products of Red-Gate, the above method can also be used, and there should be no problem.
Note:
The last version is changed to public bool get_Activated ()
{
Return true;
}
Corresponding IL: Code:
method public hidebysig specialname instance bool get_Activated() cil managed {.maxstack 8L_0000: ldc.i4.1L_0001: ret}
But I don't know why, the formatted menu is always gray. So the current Patch is available.