使用pyinstaller封装代码的方法及报错处理,关于pyinstaller的一切都放在这里,有新内容就在这篇添加。html
使用pip安装,会自动下载全部依赖的包python
pip install pyinstaller
也能够去官网下载后进入解压目录python setup.py install
web
pyinstaller依赖pywin32,能够先在shell下import win32com
看看是否是已经有了,若是没有可到这里选择合适的版本。shell
pyinstaller program_name.py
,pyinstaller会检测须要哪些依赖包,并一块儿打包。C:\Users\Administrator\Desktop\crypto> pyinstaller ginterface.py
注意,只会检测须要安装的那些依赖包,本身敲的模块可不算,因此本身的模块必定要和"program_name.py" 放在一个文件夹,且这个文件夹中要有__init__.py 文件。svg
个人打包没什么要求,参数什么的都没用上,其实pyinstaller有很多参数,经常使用的有:.net
-F, –onefile 打包成一个exe文件。code
-D, –onedir 建立一个目录,包含exe文件,但会依赖不少文件(默认选项)。xml
-c, –console, –nowindowed 使用控制台,无界面(默认)htm
-w, –windowed, –noconsole 使用窗口,无控制台blog
-n 给EXE起个名字
-i 给EXE换个图标
具体的最好仍是看看官方文档
failed to create process
两个缘由:
有空格的问题好解决,在Python文件夹下的Scripts中找到pyinstaller-scripts.py打开,把第一行的路径加上引号,如#!C:\Python34\python.exe
改成#!"C:\Python34\python.exe"
,问题立刻解决。
重命名过且牵扯过多没办法改回原路径名的话,能够看看stackoverflow上的这个问题
pywintypes.error:%1不是标准的win32应用程序
遇到这个问题是由于想给exe文件换个好看点的图标,把图标和代码放在一个文件夹,使用pyinstaller -i picture.ico file.py
,每次都会在换图标这一步报错。在网上查才知道须要用ico图标才行,我这种随便一个图改后缀是行不通的,随便下载了一个轻量级转换软件,转换后再打包,就成功了。