flutter开发windows桌面软件,使用Inno Setup打包成安装程序,支持中文

最近使用flutter开发windows桌面软件的时候,想要将软件打包成安装程序,使用了flutter官方推荐的msix打包,但是打包出来的软件生成的桌面快捷方式有蓝色背景:

这个蓝色背景应该是没有设置为动态导致的,windows系统的屏幕缩放比例改变也会导致这个蓝色背景改变,windows的主题设置改变,这个背景也会随着改变,我猜测应该是msxi没有适配这个改变,所以导致的有蓝色背景。官方推荐的msxi打包:https://flutter.cn/docs/deployment/windows

看了msxi的源码也没有看到有相关的配置,所以就换个打包工具使用。我这里将inno和中文包大包了一下,方便快速下载使用:inno setup 带中文包.zip - 蓝奏云

下载Inno Setup软件

需要到官网下载这个打包工具,然后默认安装选项即可:Inno Setup Downloads

点击下载安装,一气呵成。

配置中文

如果你需要使用中文版的安装包,就需要加载一个中文的语言包文件,官网默认不支持中文,github上有人开发了这个中文包,所以可以直接下载这个中文包,然后保存到inno setup安装的位置language里面:https://github.com/kira-96/Inno-Setup-Chinese-Simplified-Translation

中文包下载然后放到language下面:

新建一个打包脚本

然后根据提示点击下一步:

按图中的文字提示填入App的信息即可:软件名称,版本,公司,网站地址

点击下一步:添加安装文件夹名称

然后选择flutter编译后的exe程序:

Application main executable file: 此处指定flutter中打包出来的.exe文件路径 ~\build\windows\runner\Release\windows_test.exe
Other application files: 需要点击Add folder,添加~\build\windows\runner\Release\*文件夹,确保其它资源文件能打入安装包中,不然会出现 找不到Flutter_windows.dll文件,无法运行程序。

后续进行下一步配置:默认就行

继续下一步:允许创建菜单栏的图标和创建桌面快捷方式

配置安装协议、安装前介绍、安装后描述内容:可以为空

我创建了3个.txt文件,然后按需分别指定文件路径即可

需要注意.txt文件的编码格式,创建文件时默认是 UTF-8,打包安装后会出现乱码,需要将文件格式指定为UTF-8-boom格式。

配置安装模式:为所有用户安装或者询问

配置语言、应用图标、安装包文件输出路径等:

可以选择多个语言,我这里选择英文和中文

配置安装包导出路径、以及安装应用图标:

生成打包脚本:

可以将脚本保存下来,方便后面快速使用:

完成并打包

生成的脚本直接点击运行就可以打包,打包后的文件就存放在你设置的文件夹里面:

打包后的文件:

运行测试

点击安装程序,就可以正常使用了

使用这种方式安装好的程序就没有蓝色背景了:

相关推荐
恋猫de小郭1 天前
你还用 IDE 吗? AI 狂欢时代下 Cursor 慌了, JetBrains 等 IDE 的未来是什么?
前端·flutter·ai编程
TT_Close2 天前
🐟 发布中心进度同步:8 个商店的上传功能开发完毕,正抓紧测试
flutter·npm·visual studio code
RaidenLiu2 天前
Flutter Platform Channel 底层架构解析 —— 从 BinaryMessenger 到跨平台消息通信机制
前端·flutter·前端框架
鹏多多2 天前
Flutter使用screenshot进行截屏和截长图以及分享保存的全流程指南
android·前端·flutter
恋猫de小郭2 天前
什么 AI 写 Android 最好用?官方做了一个基准测试排名
android·前端·flutter
勤劳打代码4 天前
Flutter 架构日记 — 状态管理
flutter·架构·前端框架
比特鹰5 天前
手把手带你用Flutter手搓人生K线
前端·javascript·flutter
火柴就是我5 天前
Flutter限制输入框只能输入中文,iOS拼音打不出来?
flutter
TT_Close5 天前
【Flutter×鸿蒙】debug 包也要签名,这点和 Android 差远了
android·flutter·harmonyos
TT_Close6 天前
【Flutter×鸿蒙】FVM 不认鸿蒙 SDK?4步手动塞进去
flutter·swift·harmonyos