pyinstaller相关参数

                 命令

                                                         描述

 -F, –onefile

 打包一个单个文件,如果你的代码都写在一个.py文件的话,可以用这个,如果是多个.py文件就别用

 -D, –onedir     

 打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码,我个人比较推荐这样,代码易于维护

 -K, –tk

TCL/TK

 -a, –ascii

.在支持Unicode的python版本上默认包含所有的编码.

 -d, –debug

debug版本的可执行文件

 -w,–windowed,–noconsole  

Windows子系统执行.当程序启动的时候不会打开命令行(只对Windows有效)

 -c,–nowindowed,–console

使用控制台子系统执行(默认)(只对Windows有效)  pyinstaller -c  xxxx.py / pyinstaller xxxx.py --console 

 -s,–strip

run through strip.注意Cygwin的strip往往使普通的win32 Dll无法使用.

 -X, –upx

UPX安装(执行Configure.py时检测),会压缩执行文件(Windows系统中的DLL也会)(参见note)

 -o DIR, –out=DIR

spec文件的生成目录,如果没有指定,而且当前目录是PyInstaller的根目录,会自动创建一个用于输出(spec和生成

的可执行文件)的目录.如果没有指定,而当前目录不是PyInstaller的根目录,则会输出到当前的目录下.

 -p DIR, –path=DIR

(和使用PYTHONPATH效果相似).可以用路径分割符(Windows使用分号,Linux使用冒号)分割,指定多个

目录.也可以使用多个-p参数来设置多个导入路径,让pyinstaller自己去找程序需要的资源

 –icon=<FILE.ICO>

file.ico添加为可执行文件的资源(只对Windows系统有效),改变程序的图标  pyinstaller -i  ico路径 xxxxx.py

 –icon=<FILE.EXE,N>

file.exe的第n个图标添加为可执行文件的资源(只对Windows系统有效)

 -v FILE, –version=FILE

verfile作为可执行文件的版本资源(只对Windows系统有效)

 -n NAME, –name=NAME

(产生的spec的)名字.如果省略,第一个脚本的主文件名将作为spec的名字

关于打包成什么样,有两种选择:

  • -D: 创建包含可执行文件的单文件夹包,同时会有一大堆依赖的 dll 文件,这是默认选项
  • -F: 只生成一个 .exe 文件,如果项目比较小的话可以用这个,但比较大的话就不推荐

python pyinstaller 右下角托盘 pyinstaller添加图标_Windows

  只生成一个 .exe 文件,则用PyInstaller -F mc_file.py命令。

给exe程序添加图标

使用命令(注意路径):

pyinstaller -F -i E:\moveImage\move.ico mc_file.py

python pyinstaller 右下角托盘 pyinstaller添加图标_可执行文件_02

 

python pyinstaller 右下角托盘 pyinstaller添加图标_可执行文件_03

按上面的方法有时候图标不能正常显示出来,可以试着改一下程序的名字,如上的mc_file.py改为mc_file_from.py,

此时用pyinstaller -F -i move.ico mc_file_from.py可以正常设置显示图标。

python pyinstaller 右下角托盘 pyinstaller添加图标_可执行文件_04

如上程序就可以正常显示图标了。

****************************************************************************************

 打包图标的另一种方法:

用如下方法:pyinstaller -D -i move.ico mc_file.py

python pyinstaller 右下角托盘 pyinstaller添加图标_ico_05

 

 

 

python pyinstaller 右下角托盘 pyinstaller添加图标_可执行文件_06

以上就是设置图标的方法。