原来一直用pycharm,无奈它常常无法使用.来訪问一些模块的属性,朋友推荐了wingide,于是去官网下载了wingide5的最新版本号,仅仅有10天的试用期,就想能否用python的uncompyle2来反编译一下注冊文件:

首先下载uncompyle2

sudo pip2.7 install uncompyle2

成功安装后就能够在命令行下使用uncompyle2了,windows能够去安装路径查找这个exe命令

其次,从wingide中找到注冊文件 bin/2.7/中的src.zip,将当中的abstract.pyo文件解压出来

然后用命令

./uncompyle2 abstract.pyo > abstract.py

这样就依据pyo文件生成了源代码py文件,找到与使用期限相关的代码例如以下:

def _GetTermDaysLeft(self, lic = None):
""" Get number of days left on license. Returns the days, or 0 if expired,
-1 if unlimited, or -2 on error """
return -1 #我们直接在这里将这个函数返回-1
if config.kSteam:
try:
return self.__GetSteamTermDaysLeft()
except:
return -2 if lic is None:
lic = self.fLicenseData
if lic is None:
return 0
elif lic['termdays'] != '*':
try:
fields = string.split(lic['date'], '/')
if len(fields) != 3:
raise ValueError
m, d, y = map(string.atoi, fields)
if m < 1 or m > 12 or d < 1 or d > 31 or y < 0:
raise ValueError
if y < 100:
y = 2000 + y
lic_date = time.mktime((y,
m,
d,
0,
0,
0,
0,
0,
-1))
except (ValueError, TypeError, OverflowError):
return -2 cur_date = time.time()
try:
lic_secs = int(lic['termdays']) * 24 * 60 * 60
except ValueError:
return -2 if cur_date > lic_date + lic_secs:
return 0
if lic_date > cur_date + 86400:
return 0
return int((lic_secs - (cur_date - lic_date)) / 86400)
else:
return -1

然后再将我们改动好的py文件生产pyo文件放到src.zip文件里去就ok了!

以上方法仅供学习,请支持购买正版软件。

python 反编译模块uncompyle2的使用--附破解wingide5 方法的更多相关文章

  1. Python 反编译工具uncompyle2

    如何反编译pyc uncompyle2 是一个可以将pyc文件转换为py源码的工具 下载地址:https://github.com/wibiti/uncompyle2 安装: setup.py ins ...

  2. python反编译工具

    开发类在线工具:https://tool.lu/一个反编译网站:https://tool.lu/pyc/ 一看这个标题,就是搞坏事用的, 用 java 写程序多了,很习惯用反编译工具了,而且玩java ...

  3. Python反编译调用有道翻译(附完整代码)

         网易有道翻译是一款非常优秀的产品,他们的神经网络翻译真的挺无敌.无奈有道客户端实在是太难用了,而且在某些具体场景 (比如对网站进行批量翻译) 无法使用,而有道的云服务又特别的贵,一般人是无法 ...

  4. python反编译之字节码

    如果你曾经写过或者用过 Python,你可能已经习惯了看到 Python 源代码文件:它们的名称以.Py 结尾.你可能还见过另一种类型的文件是 .pyc 结尾的,它们就是 Python "字 ...

  5. pyc 文件反编译 py uncompyle2

    一.工具 https://github.com/Mysterie/uncompyle2 -----------------------2016-6-3 11:24:19-- source:[1]用un ...

  6. adworld python-trade | python反编译

    附件是.pyc格式的文件. Python程序中,原始程序代码存储在.py文件里,而Python会在执行.py文件的时候,会将.py形式的程序编译成中间式文件(byte-compiled)的.pyc文件 ...

  7. python反编译chm文件并生成pdf文件

    # -*- coding: utf-8 -*- import os import os.path import logging import pdfkit original_chm = r'C:\Us ...

  8. Python基于Pymssql模块实现连接SQL Server数据库的方法

    首先,安装pymssql第三方库pip install pymssql 其次,导入pymssql库 最后们就可以连接数据库了 import pymssql server = "10.10.9 ...

  9. 使用uncompyle2直接反编译python字节码文件pyo/pyc

    update:在Mac OS X版的September 10, 2014版(5.0.9-1)中发现安装目录中的src.zip已更换位置至WingIDE.app/Contents/Resources/b ...

随机推荐

  1. JAVA , TOMCAT , AXIS2 环境变量配置

    想要成功配置Java的环境变量,那肯定就要安装JDK,才能开始配置的. 安装JDK 向导进行相关参数设置.如图: 正在安装程序的相关功能,如图: 选择安装的路径,可以自定义,也可以默认路径.如图: 成 ...

  2. [Python爬虫] 之一 : Selenium+Phantomjs动态获取网站数据信息

    本人刚才开始学习爬虫,从网上查询资料,写了一个利用Selenium+Phantomjs动态获取网站数据信息的例子,当然首先要安装Selenium+Phantomjs,具体的看 http://www.c ...

  3. SCP远程拷贝命令

    利用scp指令可以在linux机器间传递文件,个人使用几次感觉效率还是较高的,比SFTP+本地做媒介要高得多. 1.本地拷贝到远程. 这种方式的命令模式是scp local_file remote_u ...

  4. Python Web Scraper - Simple Url Request

    from urllib.request import urlopen html = urlopen("http://www.baidu.com") print(html.read( ...

  5. T-SQL 之 表变量和临时表

    一.表变量 表变量在SQL Server 2000中首次被引入.表变量的具体定义包括列定义,列名,数据类型和约束.而在表变量中可以使用的约束包括主键约束,唯一约束,NULL约束和CHECK约束(外键约 ...

  6. java 和 C# 响应输出的相似度

    java servlet response: bf.append("Shipment No, STT No, WIN Event, DateTime, WOU Envent, DateTim ...

  7. webpack 引入jquery和第三方jquery插件

    1.引入jquery jQuery 直接在 html 中引入,然后在 webpack 中把它配置为全局即可. index.html: <!DOCTYPE html> <html> ...

  8. 一次安装win10 ubuntu16.0经过记录

    步骤摘要 三个U盘: 1.制作WIN8 PE启动盘,使用的软件为“U深度装机版”,可自行百度下载 2.制作WIN10系统安装盘,使用UltraISO,这里使用的win10镜像为: 链接: http:/ ...

  9. Think in Java(二):初始化与清理

    1. 区分重载方法: 參数顺序的不同能够区分两个方法,只是,普通情况下千万别这么做.由于这会使代码难以维护不能通过返回值类型来区分重载方法:由于假设我直接调用f(), 此时java不知道应该调用那一个 ...

  10. CallableStatement简单使用

    直接上存储过程.函数 --运行不带參数但带返回值的存储过程 CREATE OR REPLACE PROCEDURE proc_getUserCount(v_totalCount OUT NUMBER) ...