制作python程序windows安装包(飞机大战源码)
本文以飞机大战源码为例:
1.首先使用pyinstaller -w xxx.py打包 -w的意思是不显示命令行;飞机大战源码由多个.py文件以及一些图片,音乐文件组成,我们将main.py打包,
其他的py文件不需要打包,打包后会生成一个build和一个disk文件夹
disk文件夹里面就是可以直接启动的exe文件,然后把文件中用到的的音乐图片全部都拉到disk文件夹中,
直接点击exe文件就可以直接运行了,也可以直接发给其他人直接运行
要注意的是,PyInstaller打包的执行文件,只能在和打包机器系统同样的环境下。也就是说,
不具备可移植性,若需要在不同系统上运行,就必须针对该平台进行打包。
用pyinstaller打包时候各个参数的意义:
-F 指定打包后只生成一个exe格式的文件
-D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c –console, –nowindowed 使用控制台,无界面(默认)
-w –windowed, –noconsole 使用窗口,无控制台
-p 添加搜索路径,让其找到对应的库。
-i 改变生成程序的icon图标
2.使用NSIS VNISEdit编译器(使用NSIS文件夹压缩器也可以也可以制作安装包)
文件夹压缩器:简单快捷、但是有点简陋
VNISEdit编译器:复杂但是功能强大
01:打开VNISEdit编译器,从文件中选择【新建脚本:向导】

02:进入NSIS脚本向导

03:点击下一步,填写程序基本信息

应用程序网址没有就不须填写
04:下一步->安装程序语言选择Simple Chinese简体中文

05:背景窗口可以不设置,如果要设置路径要自己根据情况重新填写

06:设置应用程序的目录的授权信息,没有则不填写

07:添加.py文件及程序所在的整个目录文件(删除已经默认存在的路径)

添加的是打包生成的main.exe文件路径以及打包生成的dist文件夹路径
08:设置图标信息

09:安装好程序后提示是否要运行的文件main.exe

10:设置卸载程序的相关信息

11.保存编译

12.编译成功

如果按照上述操作正常执行,确保打包后exe文件正常运行,仍出现一些错误中止创建过程,可能是一些路径设置不对,比如说05步骤里面的音乐路径,或者把错误那一行给删掉(本人感悟)
13.最后我们就可以得到一个setup.exe的可执行安装文件,运行安装即可




制作python程序windows安装包(飞机大战源码)的更多相关文章
- 使用NISI制作.Net程序服务安装包
1.开篇之前先说一说NISI是什么. NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序.它提供了安装.卸载.系统设置 ...
- 小甲鱼python基础教程飞机大战源码及素材
百度了半天小甲鱼python飞机大战的源码和素材,搜出一堆不知道是什么玩意儿的玩意儿. 最终还是自己对着视频一行行代码敲出来. 需要的同学点下面的链接自取. 下载
- android:“新版飞机大战”源码开源啦!
今天10.24,为了纪念程序猿的节日,把之前写过的一个"飞机大战"的一个源码开源了. 源码地址:https://github.com/nuptboyzhb/newplanegame ...
- Windows安装包制作指南——Advanced Installer的使用
1. 前言 最近需要制作windows的安装包,据说Advanced Installer比较强大,遂拿它来制作安装包.在网上少量资料以及官网简约文档中摸索前进,总算是制作出可用的安装包,在此记录,仅供 ...
- C# Note19: Windows安装包制作实践
前言 最近在项目中需要不断更新新版本的software installer(软件安装包),于是便查阅资料,整理了下制作方法. NSIS安装包制作脚本 NSIS(Nullsoft Scriptable ...
- 解决octave for windows安装包无法通过SourceForge下载的问题
近期SourceForge访问不了,可以通过访问SourceForge的ftp镜像ftp://sourceforge.nchc.org.tw/进行下载: ftp下载工具可以使用FileZilla,可在 ...
- ASP.NET程序读取二代身份证(附源码)
原文:ASP.NET程序读取二代身份证(附源码) 一般来说winform应用程序解决这个问题起来时很容易的,web应用程序就麻烦一点了. 这里我说说我的解决思路: 一.你必要有联机型居民身份证阅读器一 ...
- Python机器学习经典实例电子版和附带源码
Python机器学习经典实例电子版和附带源码 下载:https://pan.baidu.com/s/1m6ODNJk--PWHW8Vdsdjs-g 提取码:nyc0 分享更多python数据分析相关电 ...
- 射击的乐趣:WIN32诠释打飞机游戏源码补充
打飞机游戏源码补充 从指定位置加载bmp并显示到对话框. , TRUE);, , LR_LOADFROMFILE); { BITMAP bmpinfo; ...
随机推荐
- SQL 练习11
查询至少有一门课与学号为" 01 "的同学所学相同的同学的信息 SELECT * from Student WHERE SId in (SELECT SId from sc WHE ...
- Spring-JDBC表情符号不能存入数据库
ALTER TABLE TABLE_NAME CONVERT TO CHARACTER SET utf8mb4; JDBC解决方案: //params List<Object> param ...
- rocketmq知识点
消息队列mq 参考资料:https://www.jianshu.com/p/824066d70da8 一.消息中间件的主要作用和功能: 1)异步解耦和分流: 2)挡住前端的数据洪峰,保证后端系统的稳定 ...
- 学习Java的9张思维导图
转自:https://blog.csdn.net/aitaozi11/article/details/79652943 网上搜集了java的学习思维导图,分享给大家. 01.Java程序设计(基础) ...
- 刷题-力扣-1738. 找出第 K 大的异或坐标值
1738. 找出第 K 大的异或坐标值 题目链接 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/find-kth-largest-xor-co ...
- 关于python使用的那些事儿
时间:2019-04-11 整理:PangYuaner 标题:Python获取并输出当前日期时间 地址:https://www.cnblogs.com/kerwinC/p/5760811.html 实 ...
- Core3.1WebApi使用MongoDB
好久没有使用MongoDB了,重新测试使用,版本不一样之前很多方法都使用不了了,下面为部分测试,下次再来更新测试 测试中使用的命令 // 新增读写的用户 db.createUser({ user:'f ...
- MySQL列举常见的关系型数据库和非关系型都有那些?
关系型数据库: Oracle.DB2.Microsoft SQL Server.Microsoft Access.MySQL 非关系型数据库: NoSql.Cloudant.MongoDb.redis ...
- Object-源码
Object的结构 类构造器 一个类必须要有一个构造器的存在 , Object类源码中,是看不到构造器的,系统会自动添加一个无参构造器. Object obj = new Object(): equa ...
- 羽夏笔记——PE结构(不包含.Net)
写在前面 本笔记是由本人独自整理出来的,图片来源于网络.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章有帮助你 ...