Flutter Inno Setup 打包 Windows 程序

转载自:flutter桌面应用从开发配置到打包分发 - 掘金 (juejin.cn)

五.打包

1.创建 release 版本的应用

flutter build release

执行完成后,

release包位置在项目的build->windows->runer文件夹中

image.png

2.应用程序分发

Windows

为 Windows 平台构建压缩包文件

你可以在项目中的 {项目目录}\build\windows\runner\Release 看到可执行文件。除了该可执行文件之外,你还需要以下内容:

  • 从相同的目录:

    • 所有的 .dll 文件

    • data 文件夹 使用inno setup制作安装包Downloads

  1. 打开inno setup, 选择Create a new script file using the Script Wizard

image.png

image.png

2.填写应用名,应用版本,发布厂商,应用官网,填写一下进入下一步

2D6575F61EE406F0A6DB33A29C04B76C.png

3.安装位置,文件名称

image.png

4.选择打包文件

  • Application main executable file 要选择Release下的.exe文件。
  • Other application files框的Add file(s)选择 Release文件夹下的所有的 .dll文件。
  • Add folder选择Release\data文件时会询问“是否包含子文件夹”,这里要选择"是"。(这里需要注意的是直接选择data文件夹打包后会丢弃data当前目录,所以我们新建一层temp文件夹,data文件夹作为temp的子目录)

image.png

image.png

image.png

5.证书信息,按需填写(也可不填)

image.png

image.png

image.png

6.这里选择输出的路径,输入的exe名称和exe文件的icon,安装密码,按需填写.

image.png

image.png

7.下一步点击finish会有如下界面,这里选择"是"。

image.png

image.png

image.png

8.输入脚本保存名称,然后会开始编译,完成后会输出在第6选择的输出目录中

image.png

9.输出安装包.exe文件, 双击安装就ok了,也可以分发给其他人.

10、注意

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

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

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

install(FILES "msvcp140.dll" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"CONFIGURATIONS Profile;ReleaseCOMPONENT Runtime)install(FILES "vcruntime140.dll" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"CONFIGURATIONS Profile;ReleaseCOMPONENT Runtime)install(FILES "vcruntime140_1.dll" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"CONFIGURATIONS Profile;ReleaseCOMPONENT Runtime)

然后重新编译应用即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/373043.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AE-关键帧

目录 关键帧操作步骤(以位置变化为例) 1.确定动画起点 2.设置起点的位置属性 3.为起点打上关键帧 4.确定动画终点 5.设置终点的位置属性 改变动画速度 1.选中所有关键帧 2.拖拽 时间反向关键帧 1.选中要反向的关键帧 2.使用时间反向关键帧 …

Apache POI、EasyPoi、EasyExcel

目录 ​编辑 (一)Apache PoI 使用 (二)EasyPoi使用 (三)EasyExcel使用 写 读 最简单的读​ 最简单的读的excel示例​ 最简单的读的对象​ (一)Apache PoI 使用 (二&…

mp4视频太大怎么压缩不影响画质,mp4文件太大怎么变小且清晰度高

在数字化时代,我们常常面临视频文件过大的问题。尤其是mp4格式的视频,文件大小往往令人望而却步。那么,如何在不影响画质的前提下,有效地压缩mp4视频呢?本文将为您揭秘几种简单实用的压缩技巧。 在分享和存储视频时&am…

算法复杂度

目录 1. 数据结构前言 1.1 数据结构 1.2 算法 2. 算法效率 2.1 复杂度的概念 3. 时间复杂度 3.1 大O的渐进表示法 3.2 时间复杂度计算示例: 3.2.1 示例1 3.2.2 示例2 3.2.3 示例3 3.2.4 示例4 3.2.6 示例6 4. 空间复杂度 4.1 空间复杂度计算示例 4.1.1 示例1 …

【Python实战因果推断】18_线性回归的不合理效果8

目录 Saturated Regression Model Regression as Variance Weighted Average Saturated Regression Model 还记得我在本章开头强调回归和条件平均值之间的相似性吗?我向你展示了使用二元干预进行回归与比较干预组和对照组的平均值是完全一样的。现在,由…

Parallels Desktop 19下载及查找我的 Parallels Desktop for Mac 激活密钥

Parallels Desktop 19 for Mac v19.3.0.54924中文破解版是一款适用于Mac的虚拟化软件,parallels desktop 19中文版允许您在Mac计算机上同时运行多个操作系统。它使您能够创建虚拟机并在这些虚拟机中安装不同的操作系统,如Windows、Linux或macOS。使用Par…

electron src build

编译文档: 构建说明 | Electron 1 下载depot_tools (1)安装depot_tools用于获取 Chromium 及其依赖项的工具集:地址 WINDOWS Download the depot_tools bundle and extract it somewhere. (2)在 Windows 上,您需要…

zdppy+onlyoffice+vue3解决文档加载和文档强制保存时弹出警告的问题

解决过程 第一次排查 最开始排查的是官方文档说的 https://api.onlyoffice.com/editors/troubleshooting#key 解决方案。参考的是官方的 https://github.com/ONLYOFFICE/document-server-integration/releases/latest/download/Python.Example.zip 基于Django的Python代码。 …

葵花奖见证品牌实力 乐橙旗舰智能锁公开首秀引全场热议

7月9日,被誉为智能家居界奥斯卡的2024第八届“葵花奖”于广州建博会广交会展馆A区会议室隆重举行。经过专业评审委员的严格筛选,乐橙荣获“2024智能锁行业消费者喜爱品牌奖”。 作为广州建博会的重要展商之一,乐橙本次携年度高端旗舰新品智能…

CLion学习笔记-cmake编译和多main函数编译

这里就不讲怎么配置clion了 项目名字 pcl_kdtree_search 1.新建一个工程名字自己取,我这里用自己学习pcl的,加一个main函数,这个时候Cmake里边就是这样的。 #声明要求的cmake最低版本 cmake_minimum_required(VERSION 3.19) #声明一个工程…

Python编程学习笔记(3)--- 操作列表

1、遍历列表 遍历列表可以采用for循环的方法,需要对列表中的每一个元素都执行相同的操作。 具体事实如下: name ["ada","cdb","dbc","bad","jinb"] for Name in name:print(Name)运行结果&#x…

企业化运维(7)_Zabbix企业级监控平台

官网:Zabbix :: The Enterprise-Class Open Source Network Monitoring Solution ###1.Zabbix部署### (1)zabbix安装 安装源 修改安装路径为清华镜像 [rootserver1 zabbix]# cd /etc/yum.repos.d/ [rootserver1 yum.repos.d]# vim zabbix.r…

【Python】基础语法体系:两种常用语句

个人主页:【😊个人主页】 系列专栏:【❤️Python】 文章目录 前言条件语句动态实例if语句if-else 语句if-elif-else 语句嵌套条件语句 循环语句for循环while循环 动态实例嵌套循环 前言 Python语句是构成Python程序的基本单元,用…

Docker:一、安装与卸载、配置阿里云加速器(Ubuntu)

目录 🍁安装docker🌲1、环境准备🌲2、安装docker Engine🧊1、卸载旧版、任何冲突的包🧊2、使用存储库安装🧊3、安装 Docker 包。🧊4、查询是否安装成功🧊5、运行hello-world镜像&…

通用的职位招聘小程序ui模板

蓝色简单的校园招聘,行业招聘,职位招聘手机小程序页面模板。包含:职位列表、职位详情、基本信息填写、登录、个人主页、消息页面等功能 通用的职位招聘小程序ui模板

【计算几何】凸包问题 (Convex Hull)

【计算几何】凸包问题 (Convex Hull) 引言 凸多边形 凸多边形是指所有内角大小都在 [ 0 , π ] [0,π] [0,π]范围内的简单多边形 凸包 在平面上能包含所有给定点的最小凸多边形叫做凸包。 其定义为:对于给定集合 X,所有包含 X 的凸集的交集 S 被称…

UE5 03-物体碰撞检测

在你需要碰撞的物体上添加一个碰撞检测组件 碰撞预设 设置为NoCollision,这样移动过程中就不会有物理碰撞阻挡效果,只负责检测是否碰撞,比较难解释,如果学过Unity的话,可以把它理解成 Collision 为 Trigger -------------------下面这个有点像Unity的OnTriggerEnter,跟OnColli…

单对以太网连接器多场景应用

单对以太网连接器应用场景概述 单对以太网(Single Pair Ethernet,简称SPE)作为一种新兴的以太网技术,以其独特的优势在多个领域得到了广泛的应用。SPE通过单对电缆进行数据传输,支持高速数据传输,同时还能…

解决C++编译时的产生的skipping incompatible xxx 错误

问题 我在编译项目时,产生了一个 /usr/bin/ld: skipping incompatible ../../xxx/ when searching for -lxxx 的编译错误,如下图所示: 解决方法 由图中的错误可知,在编译时,是能够在我们指定目录下的 *.so 动态库的…

2024-7-9 Windows NDK,Clion,C4droid 编译环境配置(基础|使用命令编译,非AndroidStudio),小白(记录)友好型教程

2024-7-9 Windows NDK,Clion,C4droid 编译环境配置(基础|使用命令编译),小白友好型 一直想使用NDK编译出lua库,然后进行开发.结果一直不成功,问题Bug出现了一堆(主要还是自己太菜,毕竟咱是编程散修一名>_<) NDK之前一直不会配置(直接用命令配置的那种,非AndroidStudio),一…