Flutter应用Windows安装包创建教程

TOC

本文中,我们将会使用 Inno Setup 这个软件来为 Flutter 应用创建 Windows 安装包。

安装 Inno Setup

首先安装 Inno Setup 这个软件, 在 Inno Setup Downloads 下载安装 Inno Setup,下载地址在这里

arduino 复制代码
https://jrsoftware.org/isdl.php

创建 Windows 安装包

编译 Flutter APP

使用命令行编译 Flutter APP 的 Windows 版本

bash 复制代码
flutter build windows --release

这里输出的 build/windows/runner/Release 目录就是编译好的软件目录。

创建安装包脚本

打开 Inno Setup,选择 Create a new script file using the Script Wizard

然后点击 "下一步",在下面这个页面,填写应用的基本信息

下一步,修改应用文件夹名称

然后就进入到了比较关键的页面了,下面的页面中,选择应用包含的文件

注意上图中 ①②③ 的说明:

  • ① 选择应用的可执行文件,在项目目录的 build/windows/runner/Release/应用名称.exe

  • ② 添加应用包含的 dll 文件,这里选择的是 Release 目录下最外层的 dll 文件

  • ③ 选择 Release 目录下的 data 目录

    ⚠️ 在添加完目录后,需要选中目录,点击 Edit,设置目标子文件夹为 data

然后点击下一步,不需要关联文件类型

下一步,允许用户创建桌面快捷方式

接下来选择应该应用的文档,没有的话可以直接跳过

接下来就是选择安装模式,默认 "使用个管理员安装模式",安装后,系统中所有用户都可以使用 APP

再次点击下一步,选择语言,然后下一步,这里设置输出文件夹,文件名,应用 Logo 等信息

最后一路点击下一步,直到完成,保存脚本为 install.iss 文件。

打包

打开创建好的 install.iss 文件,在 Inno Setup Complier 中,点击"编译"按钮,就可以开始应用的打包了。

输出下面的信息,说明打包完成了,在输出目录中就可以看到打包好的应用安装包了。

如下图所示,双击安装包就可以愉快的安装了

常见问题

如何设置默认勾选 "创建桌面快捷方式"

在 install.iss 文件中,将下图中的 Flags 设置为 checkablealone

效果

启动应用后,报错缺少 msvcp140.dll、vcruntime140.dll、vcruntime140_1.dll 文件

解决该问题,首先需要在开发机上(编译所用的 Windows 电脑),从 C:/Windows/System32 目录下找到这个文件,拷贝到项目的 windows 目录中

然后在 windows/CMakeLists.txt 文件中添加以下内容

bash 复制代码
install(FILES "msvcp140.dll" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
  CONFIGURATIONS Profile;Release
  COMPONENT Runtime)

install(FILES "vcruntime140.dll" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
  CONFIGURATIONS Profile;Release
  COMPONENT Runtime)

install(FILES "vcruntime140_1.dll" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
  CONFIGURATIONS Profile;Release
  COMPONENT Runtime)

然后重新编译应用即可,需要注意的是,不要忘记在 Inno Setup 脚本 install.iss 文件中将这三个文件加进去。

相关推荐
Sakura_j_h_32 分钟前
Python 在定时任务里输出 emoji,UnicodeEncodeError 从哪来
开发语言·字符编码·windows·python·定时任务
隔窗听雨眠4 小时前
PostgreSQL单表从Windows迁移到Linux:差异剖析、方案对比与全流程实战
linux·windows·postgresql
Helix2506 小时前
Ansible混合环境自动化:Windows与Linux统一配置管理实战
windows·自动化·ansible·playbook·配置管理·winrm·混合环境
好的佩奇7 小时前
Dart 之模式
android·flutter·dart
Java开发追求者8 小时前
windows快速安装docker
windows·docker·安装·1024程序员节
淡淡的香烟8 小时前
Flutter实现多语言切换
android·flutter·1024程序员节
Helix25011 小时前
Windows ETW与KQL实战:终端性能诊断与遥测数据分析指南
windows·性能诊断·kql·etw·azure monitor·遥测数据·tracert
陈葛杰13 小时前
Adobe Premiere Pro2025安装教程
windows·adobe·开源软件·1024程序员节
事圆则缓13 小时前
从零搭建一套 Flutter 架构:先跑通数据流
flutter
承渊政道14 小时前
iOS远程控制电脑用什么好?iPhoneiPad远程控制Windows电脑最佳方案2026横评
windows·ios·远程控制·1024程序员节·iphone ipad