此文章自己做个学习记录,也希望对跟我有一样困扰的同学一些帮助!
使用到的工具下载链接我都已经附上,点击下面蓝色字体可直接下载:
1.pyinstxtractor.py
2.wxMEDIT
3.在线编译
一、解包
①:如下图,先将pyinstxtractor.py文件和你要反编译的.exe放在一个文件夹中
②:在文件路径处输入CMD,回车,进入终端界面,然后输入
python pyinstxtractor.py nettest.exe
我的文件命名为nettest.exe,你们根据自己的文件名进行修改
按回车后可在终端界面看到如下图:
③成功后回到文件夹,可以看到多了一个文件夹
④点开这个文件夹,找到main文件, 然后把main这个文件加上.pyc后缀变成main.pyc
(此处我要说明一下,我这边是写python源码的时候命名的main,每个人命名方式不同,你们找到的python源文件不同,可能不是main,找到没有后缀的文件,加上pyc后缀就行)
二、编译
①此时,重要的一步来了,这个时候进行编译,应该还不会成功,缺少前面几个字节(叫做 magic number 表示python的版本和编译时间)
在这个文件夹中找到一个struct的文件也加上.pyc后缀
把main.pyc和struct.pyc文件拖到wxMedit文件中
对比这两个图会发现,main.pyc和struct.pyc的前12个字节不同,把struct.pyc前面12个字节复制到main.pyc中再进在线编译平台进行编译就成功了。
如果不进行这一步更改,直接放到在线编译平台上编译是如下图所示:
把12个字节复制到前面后如下图所示:
希望对大家有所帮助!