HTML项目一键打包工具:HTML2EXE 最新版

HTML2EXE 工具可以一键打包生成EXE可执行文件。可以打包任意HTML项目或者是一个网址为单个EXE文件,直接打开即可运行。支持KRPano全景VR项目、WebGL游戏项目、视频播放、,课件打包、网址打包等。
一、功能特点
| 类别 | 序号 | 功能 |
| 标题 | 1 | 支持程序图标自定义(支持png,jpg等文件作为图标) |
| 2 | 支持程序标题内容自定义 | |
| 3 | 支持程序标题高度自定义 | |
| 4 | 支持程序标题背景颜色自定义 | |
| 5 | 支持程序标题文字颜色自定义 | |
| 版权信息 | 1 | 支持版本号自定义 |
| 2 | 支持公司名称自定义 | |
| 3 | 支持软件名称自定义 | |
| 4 | 支持软件描述自定义 | |
| 程序样式 | 1 | 支持程序单实例模式 |
| 2 | 支持禁止窗口缩放功能 | |
| 3 | 支持程序窗口置顶功能 | |
| 4 | 支持程序启动最大化 | |
| 5 | 支持程序全屏(没有标题栏,也占用状态栏) | |
| 6 | 支持Tab模式,就是可以显示多栏(特别适合各种管理软件) | |
| 7 | 支持显示返回菜单 | |
| 8 | 支持显示图像相关菜单(拷贝等) | |
| 9 | 支持包含ABout对话框自定义 | |
| 10 | 支持开机自启动定义 | |
| 11 | 支持关闭后缩放至右下角托盘(程序不退出,退出通过右键退出菜单) | |
| 12 | 支持程序退出提示功能 | |
| 13 | 支持自动保持上次窗口位置大小功能 | |
| 浏览器 | 1 | 支持退出清理数据(默认退出清理) |
| 2 | 支持首页无网络提示功能 | |
| 3 | 支持禁止截屏功能 | |
| 4 | 支持API功能(关闭程序,系统注销,重启动等) | |
| 5 | 支持InPrivate模式,默认是禁止的。(不是https,程序就会提示,关闭就不会提示,默认是关闭的) | |
| 6 | 支持禁用调试模式(F12禁用) | |
| 7 | 支持自定义UA(User Agent)功能 | |
| 试用功能 | 1 | 支持按照时间授权试用功能 |
| 2 | 支持按照次数授权试用功能 | |
| 其它功能 | 1 | 支持绿色版本和安装程序功能 |
| 2 | 支持禁止触摸屏左右滑动切换页面功能 | |
| 3 | 支持生成的EXE进行压缩功能 | |
| 4 | 支持大容量网站功能(比如超过1G的项目) | |
| 5 | 支持显示器分辨率变化或者缩放参数变化提示程序重启动功能 | |
二、使用说明
1. 软件界面

2. 操作说明
A. 打包网址(URL地址)
第一步:输入网址
在 http(s)网址 编辑框中输入需要打包的URL地址,例如:http://www.baidu.com。注意编辑框前面的勾选框需要选上,选上表示此时输入的是网址。

第二步:选择生成的EXE文件保存路径及名称
点击文件夹图标,选择EXE文件名称及路径。


操作结果如下:

第三步:定义程序标题
此页可以完成整个标题以及版权信息的定义:

标题栏设置中可以设置标题栏的高度,默认是40;可以设置标题的文字内容,如果为空则默认会显示HTML项目中的Title作为标题栏。同时可以设置标题栏文字颜色以及整个标题栏的背景颜色。点击文字颜色和背景颜色可以完成颜色更改!
版权设置中可以设置程序的图标,图标支持的图片格式如下:ico,png,jpg,bmp等。可以设置生成的文件的版本号,版本号需要遵守windows的格式要求,就是4位数字。默认:1.0.0.0。
同时可以设置公司名称、软件名称、软件描述。以上信息会出现在程序右键属性页中。
演示项目选择如下:

第四步:打包
直接按下右下角绿色打包键,即可完成URL打包。

由于勾选了“生成后立即运行”,所以程序生成后就会立即运行起来!


B. 打包本地HTML(Web项目)
第一步:选择 index.html文件
去掉 http(s)网址 后的勾选框,选择Web项目中 index.html 文件所在的目录。选择完成后,程序会自动查找 index.html 文件是否存在,如果不存在则会提示,此时无法生成EXE程序。
生成程序的地址以及标题版权信息和 A. 打包网址(URL地址) 中的一样。

第二步:一键打包
直接按下右下角的绿色打包按键。

打包结果如下:

3、基础参数

| 序号 | 参数 | 说明 |
| 1 | http(s)网址 | 勾选就需要输入URL网址,否则输入本地Web项目的index.html文件所在目录。 默认是勾选状态,表示是输入URL网址 |
| 2 | 生成Exe文件 | 生成的EXE文件的目录及文件名称 |
| 3 | 窗口宽度 | 生成的EXE程序首次运行时窗体的像素宽度。默认:1920 |
| 4 | 窗口高度 | 生成的EXE程序首次运行时窗体的像素高度。默认:1080 |
| 5 | 表示生成完EXE文件后是否立即运行。默认勾选,表示立即运行 | |
| 6 | 打开结果文件目录 | 表示生成完EXE文件后是否立即打开文件所在的目录。默认不打开 |
| 7 | 压缩EXE | 表示将生成的EXE文件进行压缩。默认是不压缩。 |
4、高级参数

1)、单实例模式
勾选后,程序将只能启动一个实例,如果启动第二个实例,将会自动激活第一个实例,也就是说程序只能运行一个,不能启动多个。默认:不勾选。
2)、窗口缩放
勾选后,程序窗口将允许用户通过鼠标拖动进行放大缩小。默认:勾选。
3)、窗口置顶
勾选后,程序窗口将一直保持在其它窗口的上面。默认:不勾选。
4)、启动最大化
勾选后,程序启动后将自动处于窗口最大化。默认:不勾选。
5)、全屏
勾选后,程序窗体将占满全部屏幕,并且没有标题栏,同时覆盖系统的状态栏。默认:不勾选。
注意:该选项勾选后,启动最大化和窗口缩放将无效。在全屏状态下,如果需要退出程序,处理可以通过后面的API支持调用API以外,还可以通过ESC按键弹出推出确认菜单或者通过鼠标右键弹出退出菜单。

6)、显示返回菜单
勾选后,程序右键将会出现“返回”菜单(参见上图),否则不会出现。默认:不勾选。
7)、显示图像相关菜单
勾选后,在图像上按鼠标右键将会出现关于图像的相关菜单。默认:不勾选。

8)、Tab模式
勾选后,表示弹出的页面将会像浏览器一样,按照Tab的格式展示。默认:勾选。

前面的
可以关闭当前Tab.。
9)、InPrivate模式
勾选后,如果URL地址没有使用https访问,而是通过http访问的,对于某些网站浏览器会出现不安全提示信息。默认:不勾选。

10)、包含About框
勾选后,程序右键会出现About菜单,显示关于信息。默认:勾选。
11)、开机自启动
勾选后,程序启动一次以后,下次开机程序会自动启动。默认:不勾选。
12)、关闭缩至托盘
勾选后,如果关闭程序将不会退出程序,而是在系统的右下角托盘出显示一个图标,退出程序只能通过图标右键的退出菜单退出。默认:不勾选。

13)、退出清理数据
勾选后,退出程序时,会自动清理用户的缓存数据,在网站频繁更新时,建议勾选此项。默认:勾选。
14)、首页无网络提示
勾选后,如果没有网络会出现系统提示。默认:勾选。
15)、禁止截屏
勾选后,所有截屏软件无法截取程序界面。默认:不勾选。
16)、API支持
勾选后,可以通过jiavascript直接调用程序的相关功能。目前提供如下API:
| 序号 | 功能 | 函数 |
| 1 | 退出程序 | chrome.webview.hostObjects.Demo.CloseProgram(); |
| 2 | 关闭电脑 | chrome.webview.hostObjects.Demo.PowerOff(); |
| 3 | 注销 | chrome.webview.hostObjects.Demo.LogOff(); |
| 4 | 重启电脑 | chrome.webview.hostObjects.Demo.Reboot(); |
程序示例如下:
<!DOCTYPE html>
<html lang="zh">
<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>控制面板</title> <style> body { display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background-color: #f0f0f0; /* 背景颜色 */ } .button { background-color: #4CAF50; /* 按钮颜色 */ border: none; color: white; padding: 15px 32px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; margin: 10px; cursor: pointer; border-radius: 5px; transition: background-color 0.3s; } .button:hover { background-color: #45a049; /* 悬停效果 */ } </style> <script> async function closeProgram() { await chrome.webview.hostObjects.Demo.CloseProgram(); } async function powerOff() { await chrome.webview.hostObjects.Demo.PowerOff(); } async function logOff() { await chrome.webview.hostObjects.Demo.LogOff(); } async function reboot() { await chrome.webview.hostObjects.Demo.Reboot(); } </script>
</head>
<body> <div> <button class="button" onclick="closeProgram()">退出程序</button> <button class="button" onclick="powerOff()">关闭电脑</button> <button class="button" onclick="logOff()">注销</button> <button class="button" onclick="reboot()">重启电脑</button> </div>
</body>
</html>
17)、自动记录窗口位置信息
勾选后,下次打开程序还在上次打开的位置,并且窗口大小也一样。默认:勾选。
18)、禁用调试
勾选后,F12调试功能将被禁止。默认:勾选
19)、退出提示
勾选后,退出程序会提示用户确认,不会直接退出程序。默认:勾选。
20)、安装(Setup)
勾选后,程序将需要通过安装才能使用,否则将是绿色程序,无需安装直接使用。默认:不勾选。
21)、触摸滑动换页
勾选后,对于触摸屏,左右滑动会切换页面。默认:不勾选(禁止滑屏)
浏览器设置:自定义User Agent(UA)
通过设置UA,可以实现只在EXE程序中打开Web项目,后台可以根据UA进行个性化处理。
5、标题版权

1)、标题文字
可以设置程序窗口最上面标题的文字内容。
2)、文字颜色
标题文字的颜色,可以设置各种颜色。点击颜色可以直接进行颜色选择。默认:黑色
3)、背景颜色
可以设置标题栏的背景颜色。点击颜色可以直接进行颜色选择。默认:白色
4)、标题高度
可以设置标题的高度像素值。默认是:40
5)、程序图标
可以设置程序的图标,支持ico,png,jpg,bmp等格式。程序实际只支持ico格式,其他图片格式是经过图形转换成ico格式的。点击后面的文件夹图标可以选择图片,也可以拖动图片到编辑框中。
6)、版本号
生成的EXE程序的版本号,格式为4位整数,每个整数之间有一个圆点。例如:1.2.3.4。默认是:1.0.0.0
7)、公司名称
生成的EXE程序版权中的公司名称,体现在程序右键菜单中的属性界面。
8)、软件名称
生成的EXE程序版权中的软件名称,体现在程序右键菜单中的属性界面。
9)、软件描述
生成的EXE程序版权中的软件信息描述,体现在程序右键菜单中的属性界面。
6、授权参数

生成的EXE支持两种方式实现使用授权控制。第一种按照时间进行授权限制;第二种按照使用次数进行授权限制。
如果需要进行授权,只需要勾选【激活参数】- 【需要激活(一机一码)】。激活文件生成需要使用EXE文件的发送回自己电脑的机器码,然后可以通过激活码计算,可以生成一个激活文件,然后将这个激活文件发送给使用者激活就可以激活。
相关文章:
HTML项目一键打包工具:HTML2EXE 最新版
HTML2EXE 工具可以一键打包生成EXE可执行文件。可以打包任意HTML项目或者是一个网址为单个EXE文件,直接打开即可运行。支持KRPano全景VR项目、WebGL游戏项目、视频播放、,课件打包、网址打包等。 一、功能特点 类别序号功能标题1支持程序图标自定义(支持…...
Windows 中的启动项如何打开?管理电脑启动程序的三种方法
在日常使用电脑时,我们经常会发现一些应用程序在开机时自动启动,这不仅会拖慢系统的启动速度,还可能占用不必要的系统资源。幸运的是,通过几个简单的步骤,你可以轻松管理这些开机自启的应用程序。接下来,我…...
在 JavaScript 中接入 Facebook 事件
在 JavaScript 中接入 Facebook 事件 本文档介绍了如何在 JavaScript 中集成 Facebook Pixel 事件,用于跟踪网站的用户行为并提高广告效果。 1. 安装并初始化 Facebook Pixel 在开始接入事件之前,首先需要在你的网页中初始化 Facebook Pixel。Faceboo…...
如何在cursor上使用 deepseek 模型
引言 Cursor 虽提供免费试用,但试用时间有限,且后续使用可能会面临速度限制。不过,用户可以使用自己的 API key 来继续使用。值得一提的是,deepseek 模型使用成本极为低廉,能为使用者带来更多灵活性与经济性。基于此&…...
mysql的字符集和比较规则
mysql的字符集和比较规则 一、字符集(Character Set)二、比较规则(Collation)三、客户端与服务器的字符集转换四、注意事项总结 深度解读mysql是怎样运行的 MySQL的字符集和比较规则是其处理字符串存储、传输及比较的核心机制&…...
什么是LoRA微调
LoRA是大模型微调方法的一种,它的特点是只在模型的 部分权重(如 QKV 矩阵) 上 添加可训练参数 通过 低秩矩阵(AB) 来优化参数更新 优点: 极大降低显存消耗(deepseek 7B 只需 10GB) 适…...
热管理系统:新能源汽车的 “温度管家”
在新能源汽车的众多系统中,热管理系统堪称是一位默默守护的 “温度管家”,其重要性不容小觑。传统燃油车的热管理主要围绕发动机、变速箱冷却系统和空调系统,而新能源汽车的热管理则涵盖了电池系统、电机电控、空调系统等绝大部分零部件 &…...
如何修改Windows系统Ollama模型存储位置
默认情况下,Ollama 模型会存储在 C 盘用户目录下的 .ollama/models 文件夹中,这会占用大量 C 盘空间,增加C盘“爆红”的几率。所以,我们就需要修改Ollama的模型存储位置 Ollama提供了一个环境变量参数可以修改Ollama的默认存在位…...
《网络安全入门实战手册》
0经验转行网络安全,个人分享一下学习中总结的文档,以下为目录可以点击标题看对应文章,欢迎评论区讨论,后期会发更多安全相关的学习资料等。希望跟大家一起进步。 第1章:网络安全基础知识 1、什么是网络安全ÿ…...
一文详解U盘启动Legacy/UEFI方式以及GPT/MBR关系
对于装系统的老手而说一直想研究一下装系统的原理,以及面对一些问题时的解决思路,故对以前的方法进行原理上的解释,主要想理解其底层原理。 引导模式 MBR分区可以同时支持UEFI和Legacy引导,我们可以看一下微pe制作的启动盘&#…...
如何查看java的字节码文件?javap?能用IDEA吗?
编译指令: javac YourProject.java 查看字节码文件的指令: javap -c -l YourProject.class 不添加-c指令就不会显示字节码文件: 不添加 -l 就不会显示源代码和字节码文件的对应关系: 添加-l之后多出来这些: IDEA不太…...
加油站(力扣134)
既然每一个加油站都有对应的加油量和耗油量,我们不妨计算一下每个加油站的汽油净增量。如果每个加油站净增量之和不为负数,则说明一定可以找到唯一的起始点。那我们该如何找到这个起始点呢?我们设置最开始的起点为第0个加油站,接着…...
1.vue使用vite构建初始化项目
npm create vuelatest❯ npm create vuelatest> npx > create-vueVue.js - The Progressive JavaScript Framework✔ Project name: … vue3_test ✔ Add TypeScript? … No / Yes ✔ Add JSX Support? … No / Yes ✔ Add Vue Router for Single Page Application dev…...
汽车零部件开发应该具备哪些编程思维?
目录 1、功能安全思维 2、实时性与确定性思维 3、可靠性和冗余思维 4、硬件软件协同思维 5、CAN总线通信思维 6、故障诊断和自诊断思维 7、功耗优化思维 8、软件更新和版本管理思维 9、用户体验与安全性思维 汽车零部件开发中,嵌入式软件在车辆系统中的作用…...
25工程管理研究生复试面试问题汇总 工程管理专业知识问题很全! 工程管理复试全流程攻略 工程管理考研复试真题汇总
工程管理复试面试心里没底?别慌!学姐手把手教你怎么应对复试! 很多同学面对复试总担心踩坑,其实只要避开雷区掌握核心技巧,逆袭上岸完全有可能!这份保姆级指南帮你快速锁定重点,时间紧迫优先背…...
#4【CVPR2024】SHIP:图像融合的一种协同高阶交互范式
📜 Probing Synergistic High-Order Interaction in Infrared and Visible Image Fusion 🍕 源码: https://github.com/zheng980629/SHIP 先前融合规则与我们提出的范式之间的比较。之前的工作要么(a)缺乏明确的交互&a…...
虚拟机从零实现机器人控制
1. 系统安装 因Docker不适合需要图形界面的开发,因此使用虚拟机VMware方便可视化界面方式查看效果,相关软件可以从官网下载,这里有一整套免费安装文件百度网盘地址: 2. ROS安装 Ubuntu 22.04:https://docs.ros.org…...
趣味数学300题1981版-八个等式、五个5等于24
八个等式 分析:此问题的求解思路是按照最后一步运算的运算符号进行分类。示例中最后一步的运算是除法,只要被除数与除数相等且不为0,就可以得到结果1.因此我们还可以对于结果等于1的情况列出其他的算式。如果保持最后一步运算为除法运算&…...
Microsoft Office 2024 软件安装教程(免费)
1.通过百度网盘下载Microsoft Office 2024安装包 下载地址为: https://pan.baidu.com/s/1jk1kvQsKFH9dZGF5xfGgiQ?pwdjbkv 提取码: jbkv 。 2.安装环境 Win10~Win11或更高。 3.安装步骤 (1)下载压缩包,解压缩。 (2…...
Linux 常见指令
linux 常见指令 Alt Enter 全屏 退出全屏 pwd: 显示用户所处路径 ls :显示当前路径下的文件或者目录名称 [ltVM-8-13-centos ~]$ ls 106 [ltVM-8-13-centos ~]$ ls -l ll :显示当前路径下的文件或者目录名称更多属性信息 [ltVM-8-13-cen…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
wpf在image控件上快速显示内存图像
wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...
