1. 程式人生 > >WingIDE 5的安裝與破解方法

WingIDE 5的安裝與破解方法

網上大多是替換pyo檔案的方法,試了一次不知道為什麼出錯了,以前用過這種破解指令碼的方法,但是很難找,寫在這裡以後方便自己查詢。前提是已經安裝好Python

1.WingIDE 5下載

可以從官方網站下載最新版本,也可以直接用這個5.0.0-1版本

2.破解指令碼

指令碼是已經寫好的,感謝偉大的原作者。貼出來是怕以後找不到,涉及侵權問題請告知,馬上刪除。

#CalcActivationCode.py
import sha
import string
BASE2 = '01'
BASE10 = '0123456789'
BASE16 = '0123456789ABCDEF'
BASE30 = '123456789ABCDEFGHJKLMNPQRTVWXY'
BASE36 = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' BASE62 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz' BASEMAX = string.printable def BaseConvert(number, fromdigits, todigits, ignore_negative = True): """ converts a "number" between two bases of arbitrary digits The input number is assumed to be a string of digits from the fromdigits string (which is in order of smallest to largest digit). The return value is a string of elements from todigits (ordered in the same way). The input and output bases are determined from the lengths of the digit strings. Negative signs are passed through. decimal to binary >>> baseconvert(555,BASE10,BASE2) '1000101011' binary to decimal >>> baseconvert('1000101011',BASE2,BASE10) '555' integer interpreted as binary and converted to decimal (!) >>> baseconvert(1000101011,BASE2,BASE10) '555' base10 to base4 >>> baseconvert(99,BASE10,"0123") '1203' base4 to base5 (with alphabetic digits) >>> baseconvert(1203,"0123","abcde") 'dee' base5, alpha digits back to base 10 >>> baseconvert('dee',"abcde",BASE10) '99' decimal to a base that uses A-Z0-9a-z for its digits >>> baseconvert(257938572394L,BASE10,BASE62) 'E78Lxik' ..convert back >>> baseconvert('E78Lxik',BASE62,BASE10) '257938572394' binary to a base with words for digits (the function cannot convert this back) >>> baseconvert('1101',BASE2,('Zero','One')) 'OneOneZeroOne' """
if not ignore_negative and str(number)[0] == '-': number = str(number)[1:] neg = 1 else: neg = 0 x = long(0) for digit in str(number): x = x * len(fromdigits) + fromdigits.index(digit) res = '' while x > 0: digit = x % len(todigits) res = todigits[digit] + res x /= len(todigits) if
neg: res = '-' + res return res def SHAToBase30(digest): """Convert from a hexdigest form SHA hash into a more compact and ergonomic BASE30 representation. This results in a 17 'digit' number.""" tdigest = ''.join([ c for i, c in enumerate(digest) if i / 2 * 2 == i ]) result = BaseConvert(tdigest, BASE16, BASE30) while len(result) < 17: result = '1' + result return result def AddHyphens(code): """Insert hyphens into given license id or activation request to make it easier to read""" return code[:5] + '-' + code[5:10] + '-' + code[10:15] + '-' + code[15:] LicenseID='CN123-12345-12345-12345' #Copy the Request Code from the dialog RequestCode='RW51D-H2H9H-C1565-6EY29' hasher = sha.new() hasher.update(RequestCode) hasher.update(LicenseID) digest = hasher.hexdigest().upper() lichash = RequestCode[:3] + SHAToBase30(digest) lichash=AddHyphens(lichash) #Calculate the Activation Code data=[7,123,23,87] tmp=0 realcode='' for i in data: for j in lichash: tmp=(tmp*i+ord(j))&0xFFFFF realcode+=format(tmp,'=05X') tmp=0 act30=BaseConvert(realcode,BASE16,BASE30) while len(act30) < 17: act30 = '1' + act30 act30='AXX'+act30 act30=AddHyphens(act30) print "The Activation Code is: "+act30

3.具體破解

1)先安裝WingIDE,安裝好後開啟,啟用時選擇第三項,輸入license id CN123-12345-12345-12345(這個license是隨便亂填的)。
圖1
2)點選Continue後彈框,拷貝框中的request code。
圖2
3)修改Python指令碼中的RequestCode為剛才得到的Request Code值,然後執行指令碼,得到一個啟用碼。
圖3
4)把這個啟用碼填入上面的Activate License框中,點選Continue即可成功註冊。
圖4
5)再次開啟WingIDE即可正常使用。