WingIDE Pro KeyGen 支持5.x-10.x
部分代码来源于网络,我只是稍加整理,增加了一些元素,支持了最新版,感谢坛友提供了新版本的 魔数key,虽然还不知道是怎么来的,有知道的朋友可以回帖说一下 感谢此源码在Python3.8.6编译测试通过,特此论坛备份一份,部分模块需自行安装,源码见下方,提前祝大家新年快乐!感谢大家一致的陪伴
Python源码:
import os
import string
import random
import hashlib
import platform
py_version = platform.python_version()
if py_version != '3':
print("Can't run under python2 env ! please run tool under python 3.2 or later version !")
os.system("pause")
os._exit(0)
# GUI Import
from tkinter import *
from tkinter import ttk
from tkinter import messagebox
BASE16 = '0123456789ABCDEF'
BASE30 = '123456789ABCDEFGHJKLMNPQRTVWXY'
def RandomString(size=20, chars=string.ascii_uppercase + string.digits):
return ''.join((random.choice(chars) for _ in range(size)))
def BaseConvert(number, fromdigits, todigits, ignore_negative=True):
if not ignore_negative and str(number) == '-':
number = str(number)
neg = 1
else:
neg = 0
x = 0
for digit in str(number):
x = x * len(fromdigits) + fromdigits.index(digit)
res = ''
while x > 0:
digit = x % len(todigits)
res = todigits + res
x //= len(todigits)
if neg:
res = '-' + res
return res
def AddHyphens(code):
return code[:5] + '-' + code + '-' + code + '-' + code
def SHAToBase30(digest):
tdigest = ''.join()
result = BaseConvert(tdigest, BASE16, BASE30)
while len(result) < 17:
result = '1' + result
return result
def loop(ecx, lichash):
part = 0
for c in lichash:
part = ecx * part + ord(c) & 1048575
return part
g_version_list = ('10.x.x','9.x.x','8.x.x', '7.x.x', '6.x.x', '5.x.x')
g_version_magics = {
'5.x.x': ,
'6.x.x': ,
'7.x.x': ,
'8.x.x': ,
'9.x.x': ,
'10.x.x':
}
def CalcActivationCode(args):
if not isinstance(args, Application):
return
# # Generate License ID
# licenseID = AddHyphens('CN' + RandomString(18, '123456789ABCDEFGHJKLMNPQRTVWXY'))
licenseID = args.LicID.get()
print ('License id: ' + licenseID)
#requestCode = input('Enter request code:')
requestCode = args.ReqCode.get()
if requestCode.strip() == '':
messagebox.showerror("Hints", "Please input the Request Code !")
return
# # SHA1
shaHasher = hashlib.sha1()
shaHasher.update(requestCode.encode('utf-8'))
shaHasher.update(licenseID.encode('utf-8'))
hashResult = shaHasher.hexdigest().upper()
lichash = AddHyphens(requestCode[:3] + SHAToBase30(hashResult))
versionMagic = None
# Supported crack WingIDE Pro version list : 5.x.x, 6.x.x, 7.x.x
wingIDEProVerStr = args.VersionInfo.get()
print ('Cracking WingIDE Version : ' + wingIDEProVerStr)
if wingIDEProVerStr in g_version_magics.keys():
versionMagic = g_version_magics
if versionMagic:
activationCode = format(loop(versionMagic, lichash), '05x') + \
format(loop(versionMagic, lichash), '05x') + \
format(loop(versionMagic, lichash), '05x') + \
format(loop(versionMagic, lichash), '05x')
#pass
else:
print('Get wrong WingIDE version, exit...')
os._exit(0)
activationCode = BaseConvert(activationCode.upper(), BASE16, BASE30)
while len(activationCode) < 17:
activationCode = '1' + activationCode
activationCode = AddHyphens('AXX' + activationCode)
print ('Activation code: ' + activationCode)
args.ActCode.set(activationCode)
#pass
class Application(Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.master.title('WingIDE Pro KeyGen 5.x-10.x')
self.master.geometry('350x180')
self.create_widgets()
self.master.resizable(width=False, height=False)
#pass
def create_widgets(self):
current_row = 0
current_col = 0
# Version Info
self.l0 = Label(self.master, text='WingIDE Pro :')
self.l0.grid(padx=5, pady=5, row=current_row, column=current_col)
self.VersionInfo = StringVar()
self.versionComb = ttk.Combobox(self.master, textvariable=self.VersionInfo, state='readonly')
self.versionComb['values'] = g_version_list
self.versionComb.grid(padx=5, pady=1, row=current_row, column=current_col + 1)
self.versionComb.current(0)
current_row += 1
# License ID info
self.l1 = Label(self.master, text='LicenseID:')
self.l1.grid(padx=5, pady=5, row=current_row, column=current_col)
self.LicID = StringVar()
self.LicEntry = Entry(self.master, textvariable=self.LicID, width=30)
self.LicEntry.grid(padx=5, pady=5, row=current_row, column=current_col + 1)
self.LicID.set(AddHyphens('CN' + RandomString(18, '123456789ABCDEFGHJKLMNPQRTVWXY')))
current_row += 1
# Request code info
self.l2 = Label(self.master, text='RequestCode:')
self.l2.grid(padx=5, pady=5, row=current_row, column=current_col)
self.ReqCode = StringVar()
self.ReqcodeEntry = Entry(self.master, textvariable=self.ReqCode, width=30)
self.ReqcodeEntry.grid(padx=5, pady=5, row=current_row, column=current_col + 1)
current_row += 1
# Activation code info
self.l3 = Label(self.master, text=b'ActivationCode:')
self.l3.grid(padx=5, pady=5, row=current_row, column=current_col)
self.ActCode = StringVar()
self.ReqcodeEntry = Entry(self.master, textvariable=self.ActCode, width=30, state='readonly')
self.ReqcodeEntry.grid(padx=5, pady=5, row=current_row, column=current_col + 1)
current_row += 1
self.btn_about = Button(self.master, text='About', width=10, bg="#0266d1", command=lambda: messagebox.showinfo("Dialog", "Wing IDE Pro KeyGen 2.0\n Code By: Wgz001\n 2024.02.02"))
self.btn_about.place(x=10, y=135)
self.btn_Reroll = Button(self.master, text='Reroll ID', width=10, bg="#0266d1", command=lambda: self.LicID.set(AddHyphens('CN' + RandomString(18, '123456789ABCDEFGHJKLMNPQRTVWXY'))))
self.btn_Reroll.place(x=95, y=135)
self.btn_gen = Button(self.master, text='Generate', width=10, bg="#38a851", command=lambda: CalcActivationCode(self))
self.btn_gen.place(x=180, y=135)
#self.btn_exit = Button(self.master, text='Exit', width=10, bg="#d73343", command=lambda: self.master.destroy())
self.btn_exit = Button(self.master, text='Exit', width=10, borderwidth=1, bg="#d73343", command=lambda: self.master.destroy())
self.btn_exit.place(x=265, y=135)
if __name__ == '__main__':
root = Tk()
#
app = Application(master=root)
app.mainloop()
一起玩游戏 #在这里快速回复# 版主的软件都很高端,啥时候放出傻丫头? 啥也不说了,楼主就是给力! R版NB!!! 强大的代码和功能 这个已经有在线版的注册机了,感谢楼主分享源码! 感谢楼主分享源码! 感谢表哥分享 感谢分享源码!收藏了
页:
[1]
2