您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:基于pyinstaller超级加密操作(加壳和转c)

51自学网 2021-10-30 22:53:12
  python
这篇教程基于pyinstaller超级加密操作(加壳和转c)写得很实用,希望能帮到您。

1.首先安装上必须的包

pip install Cythonpip install pyinstaller

2.最好是安装vs 版本的话

我安装的是最新的2019,选择安装界面的时候选如下图这个和python的

python应该是可选的,但是我怕麻烦就直接选上了

3.然后接下来就是写setup.py文件了

from distutils.core import setupfrom Cython.Build import cythonizesetup( ext_modules = cythonize(["main8_2.py"]), # add.py 为需要打包的文件名,不能包含中文)#python setup.py build_ext --inplace#在把.cp36-win_amd64删掉

这个是固定的

里面是自己要加密转c的的py文件,我是把所有功能都封装在这个里面了,到时候引入包直接调用他

命令行运行

python setup.py build_ext --inplace

结束后会在当前路径下生成一个main8_2.cp36-win_amd64的文件,他的后缀名就不用管它了,直接把你要加密的那个包额外的部分删除掉就行了,我删除的部分就是.cp36-win_amd64,这里地的确的确是有一个点号的

然后把相应的py文件换个路径,好像可以不换,优先级不一样,为了避免麻烦,我也懒得查资料,所以我就换了他的路径

4.接下来就是主程序进行调用了

这个py现在变成了一个pyd文件,还有一个c文件,可以把它理解成一个包,跟py的包一样去调用就行了

5.还有很重要的一点

要把所有调用的包都导入一次

我用的pycharm虽然想报错,但是运行是没有错误的

6.再用key进行加密

虽然这种法几乎没多大用处,但是由总比没有要好

pyinstaller -i fa.ico xxx.py -F --key hsakdhiia8 --clean

最终成成功打包exe,在当前路径下的dist可以找到可执行文件

补充:python程序的加密和打包

在程序发布时,有时会有程序加密和打包的需求,SO:

用CYTHON编译加密:

build.py

#!/usr/bin/python#encoding: gb2312 filename="client_missions.py" print"--------------------------------------"print" python build.py build_ext --inplace"print"--------------------------------------"from distutils.coreimportsetupfrom distutils.extensionimportExtensionfrom Cython.Distutilsimportbuild_extimportsys efile=filename.split('.')[0] setup( cmdclass = {'build_ext': build_ext}, ext_modules =[Extension("%s"%efile , ["%s"%filename])] )

开始编译加密:

python build.py build_ext --inplace

打包成一个文件

pyinstaller --onefile MoonServer.py

以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。如有错误或未考虑完全的地方,望不吝赐教。


解决python 出现unknown encoding: idna 的问题
解决pip install 卡住不动的问题
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。