Lazy loaded image
实践记录
程序打包工具 Inno 和nsis
字数 1805阅读时长 5 分钟
2025-11-13
2025-11-17
日期
类型
状态
链接
摘要
标签
分类
图标
密码
URL

Python打包

  • 带dll文件
    • 生成单文件

      Inno Setup 安装脚本模板(适配你的Python程序)

      以下脚本可实现:生成安装包、创建桌面/开始菜单图标、添加开机启动,直接替换占位符即可使用。

      使用步骤(超简单)

      1. 准备工具:安装Inno Setup(官网:https://jrsoftware.org/isinfo.php,下载后默认安装即可)。
      1. 替换占位符:把脚本中所有【替换:xxx】的内容改成你的实际信息(如程序路径、图标路径)。
      1. 生成安装包
          • 打开Inno Setup,点击“File→New→Load Script”,选择修改后的脚本文件。
          • 点击菜单栏“Build→Compile”,等待编译完成,安装包会生成在OutputDir指定的目录(如桌面)。

      关键注意点

      1. exe路径:确保[Files]中的Source路径是你PyInstaller打包后的exe实际路径(单文件/多文件都支持)。
      1. 图标格式:必须用ico格式图标(可在线把png/jpg转换成ico,推荐网站:https://www.icoconverter.com
      1. 开机启动:脚本用的是“当前用户”开机启动(无需管理员权限),如果需要“所有用户”启动,把Root: HKCU改成Root: HKLM,并将PrivilegesRequired改为admin
      1. 卸载清理:脚本会自动删除开机启动项和安装文件,无需额外配置。
      如果编译时提示“文件找不到”,大概率是路径写错了(注意路径中不要有中文空格,或用引号包裹路径)。需要我帮你检查修改后的脚本吗?
       
       
      有3个成熟框架可满足需求,分别适配不同场景,核心功能都能实现“生成安装包+创建桌面图标+添加开机启动”,具体如下:

      1. NSIS(最常用,轻量灵活)

      • 核心优势:免费开源、体积小(安装包通常几MB)、脚本可定制性极强,支持Windows全版本。
      • 实现要点
        • PyInstaller先把Python脚本打包成exe(带图标:i xxx.ico)。
        • 编写NSIS脚本,配置“安装路径选择”“桌面图标创建”“开机启动项添加”(通过写入注册表HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run实现开机启动)。
      • 适用场景:追求安装包小巧、需要高度定制安装流程(如安装协议、组件选择)。

      2. Inno Setup(易上手,功能全面)

      • 核心优势:可视化脚本编辑器(新手友好)、自带中文支持、支持自动更新、安装界面美观。
      • 实现要点
        • 同样先通过PyInstaller打包exe。
        • 用Inno Setup编辑器创建新项目,在“文件”中添加exe及依赖,“图标”选项指定桌面图标,“运行”选项中添加注册表写入命令实现开机启动。
      • 适用场景:新手入门、需要快速生成标准化安装包,兼顾美观和功能。

      3. cx_Freeze + InstallShield(企业级,功能强大)

      • 核心优势:cx_Freeze打包稳定性高(适合复杂项目),InstallShield支持批量部署、权限管理、多语言安装。
      • 实现要点
        • 用cx_Freeze将Python项目打包成exe目录。
        • 用InstallShield导入打包后的文件,配置桌面快捷方式,通过“启动项”模块添加开机启动(支持按用户/系统级别配置)。
      • 适用场景:企业级应用、需要复杂安装逻辑(如权限校验、组件依赖检查)。

      推荐组合(新手首选)

      PyInstaller + Inno Setup:步骤简单,无需复杂脚本编写,10分钟就能生成符合需求的安装包。
      模板

      NISI使用记录

      上一篇
      python安装HID库
      下一篇
      单片机学习记录