借助pyinstaller为你的python程序添加版本号

Valentina ·
更新时间:2024-11-10
· 954 次阅读

在python源代码py文件打包exe的过程中 往往没办法做的跟其他软件相像,生成的exe文件一点也没有“范儿” 也不能满足一定的需求,今天为大家介绍给程序添加版本号的基本方法。

添加版本号的核心工具就是pyinstaller的*–vesion-file*设置,可以根据给定的文件添加版本号,这个文件它并没有指明什么类型,什么格式,我们需要自己探索。
网络上很多的文章都有提到一个cmd命令:pyi-grab_version
它用来抓取exe文件的版本号,生成一个文件
这个命令是安装了pyinstaller之后才会有的,否则“pyi-grab_version不是内部或外部…”如果你在安装pyinstaller时候遇到了一些问题,可以参照我发表过的一篇博客:

https://blog.csdn.net/weixin_46847476/article/details/105346569
pip安装pyinstaller几种常见报错及解决方案

pyi-grab_version主要需要我们传入的有两个参数,第一个是需要抓取的exe文件的名称,第二个是这些版本信息储存的文件的名称,不存在时将被创建,通常和自己源代码文件放在一起就可以了。
在这里插入图片描述
那我们现在就开始使用这个pyi-grab_version抓取exe文件的版本号,这个命令适用于所有拥有版本信息的exe程序(不仅仅是基于python的程序),我们以python.exe作为抓取的对象,先切换到所在目录,使用命令:
pyi-grab_version python.exe file_version.txt
(然后手动改扩展名为py)

在这里插入图片描述
完成之后就可以去比较它的详细信息和版本文件了。
在这里插入图片描述
在这里插入图片描述
我们不难发现,在前面一段文件版本中,文件版本以元组形式表示,在详细信息里面这些数据是以英文句号分隔的,但是在版本文件里,是以英文逗号分隔的。

在后面的StringStruct中,用u’'类型的字符串表示一些信息,把第一项翻译一下,可以得到这些名称和详细信息里面的中文是一样的,所以我们可以比较两个信息,得出标有红色方点的这些项是会显示在详细信息里的。

如果,你想制作自己的版本文件,只要把第二项改为自己的信息就可以了,也可以更改CompanyName等内容,改为自己的公司,还可以更改其他的项,使其全部按照自己的想法,在这里FileVersion又出现了一次,但是前面filevers已经声明了,那么这一项写不写无所谓,ProductName可以不和前面prodvers相同,写入版本时优先选择ProductName。

完成这些以后,我们就可以在pyinstaller中给自己的程序加上版本号了。我们运用*–version-file FILE*来实现。

使用指令:pyinstaller [一些options,根据自己需要设定] --version-file your_version.py your_program.py

这样产生的exe文件就能含版本号了!


作者:Ark_py



python程序 版本 版本号 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号