本文介绍了如何使用WinPython和NSIS工具快速创建和打包Python应用程序。开发者可以在没有安装Python的电脑上运行应用,适合分享和跨设备使用。以Streamlit为例,详细说明了安装、创建应用及打包过程,提供便捷的开发和部署方案。
NSIS(Nullsoft脚本安装系统)是一个开源的Windows安装程序制作工具,支持安装、卸载和系统设置。通过脚本语言控制安装过程,配备VNISEdit编辑器,简化创建流程。NSIS兼容多种Windows平台和压缩算法,具有小巧、支持多语言且可免费使用的特点。
本文介绍使用 electron-builder 打包 Windows 安装包的流程:先安装 electron 和 electron-builder,再在 package.json 中配置 scripts 与 build 字段,包括 appId、productName、asar、输出目录、Windows 图标、管理员权限、NSIS 目标及国内 Electron 下载镜像;NSIS 配置支持非一键安装、允许提权、更改安装目录、创建桌面和开始菜单快捷方式。最后运行 npm run dist 或 yarn dist 生成安装包。
使用 electron-builder 打包 Electron 应用时,用 yarn 打包导致 sqlite3 编译出错,改用 npm 后解决;随后遇到 winCodeSign 下载超时,手动放入缓存目录无效,最终在项目根目录创建 .npmrc 文件,配置 ELECTRON_MIRROR 和 ELECTRON_BUILDER_BINARIES_MIRROR 指向淘宝镜像,打包成功。
最近公司碰到一个问题,NSIS在64位下安装时无法写入注册表。 首先,这个问题不是UAC没有权限的问题,因为我使用administrator安装依然有问题。其次,问题和win2008没关系,只出现在64位上。 问题在哪里呢?在写入注册表前,SetRegView 64,写入后换回32,问题解决。 真TMD的。
完成下面两步后,将自动完成登录并继续当前操作。